解构表达式
一个数组,将数组前两个元素赋值给2个变量
解构数组:
let arr = [2,5,-6,10];
以前:
let x = arr[0];
let y = arr[1];
现在:
let [x,y] = arr;
将数组后2个值赋值给a,b:
let [,,a,b] = arr;
不要第一个,取出其他的
let [,...r] = arr;//r就是包含除arr第一个元素的新数组
解构对象:
let p = {name:"jeck",age:21};
let {name,age} = p;
变量name中存放的就是p中的name的值,age存放的就是age的值
解构对象不能变量名必须和对象的属性对应,因为数组是有序的,对象是无序的
如果想要改变变量名则:
let {name:n,age:a} = p;//即:取出name赋值给变量n,取出age赋值给变量a
双重解构:(解构对象中的对象)
let p = {name:"jeck",age:21,gril:{name:"rose",age:18}};
let {gril:{name}} = p;
拷贝:
let {...obj} = p;
obj和p值一模一样,但是是两个对象
所谓解构就是解析结构,并对应结构进行使用(快捷解析并重新封装)