解构赋值:ES6中允许从数组中提取值,按照对应位置,对变量赋值。对象也可以实现解构。
数组解构:
let arr = [1,2,3]
let [a, b, c] = arr
console.log(a);
console.log(b);
console.log(c);
如果解构不成功,变量的值为undefined。我们在上例中添加了一个变量d。从控制台打印d,结果显示为undefined。
对象解构:
let obj = {
name: '张三',
age: 20
}
let {name, age} = obj
console.log(name);
console.log(age);
它会用变量的名称去匹配属性的名称,然后进行赋值。
还有另一种方式:
let obj = {
name: '张三',
age: 20
}
let {name:uname, age:uage} = obj
console.log('uname:' + uname);
console.log('uage:' + uage);
这种方式在冒号左边的是用于属性的匹配,冒号右边的才是真正的赋值。