//什么是数组的解构赋值?//es6新增的//注意点:/*let arr=[1,3,5];//let a=arr[0];//let b=arr[1];//let c=arr[2];let [a,b,c]=arr;//意思是:arr的下标从0 1 2开始依次赋值给a,b,cconsole.log("a= "+a);console.log("b= "+b);console.log("c= "+c);*/
第二点:在数组的解构赋值中,左右两边的格式要一模一样,才能解构赋值的哈
let [a,b,c]=[1,3,[2,4]];console.log("a = " + a);console.log("b = " + b);console.log("c = " + c);
let [a,b,[c,d]]=[1,3,[2,4]];console.log("a = " + a);console.log("b = " + b);console.log("c = " + c);console.log("d = " + d);
这里,c与d是按照顺序赋值的哈…
//在数组的结构赋值中,左边的个数可以和右边的个数不一样.let [a,b]=[1,3,5];console.log("a = " + a);console.log("b = " + b);// 2.3在数组的解构赋值中, 右边的个数可以和左边的个数不一样console.log("==================================");let [c,d,e]=[1];console.log("a = " + c);console.log("b = " + d);console.log("c = " + e);//没有值使用默认值为undefined.
//在数组的解构赋值中,如果左边的多过右边的, 那么我们可以给左边指定默认值let [a,b=666,c=8880]=[1];console.log("a = " + a);console.log("b = " + b);console.log("c = " + c);// 2.5在数组的解构赋值中, 如果右边的多过左边的, 那么如果设置默认值会被覆盖
let [e,f=666]=[1,3,5];console.log("e = " + e);console.log("f = " + f);
// 2.7在数组的解构赋值中, 如果使用了扩展运算符, 那么扩展运算符只能写在最后// ES6中新增的扩展运算符: ...let [a,...b]=[1,3,5];console.log("a = " + a);console.log(b);
…是数组的扩展运算符哈,es6