一,解构赋值是什么?
解构赋值是对赋值运算符的扩展。他是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。
1,结构数组:
变量声明没有要求,结构必须与数组一致
let [d,e,[f,g],{cname}] = [1,2,[3,4],{cname:"123"}];
console.log(d,e,f,g,cname);
2,赋值为数组
...test :将test赋值为数组
let [aa,...test] = arr1;
console.log(aa,test); // test 赋值 数组
注意:
...test 在尾部只能写一个,后面不能在声明变量了。
let [aa,...test,...xieke] = arr1; // 报错
let [aa,...test,cc] = arr1 // 报错
二,解构赋值的使用
1,换值
var x = 1 var y = 2 var z
z = x x = y y = z
let a = 1;
let b = 2;
[a,b] = [b,a];
console.log(a,b);//2 1