变量的解构:
ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring);
便于给变量赋初值;
let [a,b,c]=[1,2,3]; 这样实现就可以给a,b,c分别赋值为1,2,3
解构的默认值:
如果解构不成功,变量的值会被解析为undefined
解析对象
变量必须与属性同名,才能取到正确的值
默认值:var{x, y =5} = {x:1}; 解构结果:x// 1y// 5(默认值生效的条件是,对象的属性值严格等于undefined。)
注意:等号左边的两个变量的次序,与等号右边两个同名属性的次序不一致,但是对取值完全没有影响。第二个例子的变量没有对应的同名属性,导致取不到值,最后等于undefined。
注意:使用中 如果使用let ,如果代码块中如果已经命名,结构对象里如果和已声明对象重名则会报错
字符串的解构赋值
ES6为字符串添加了遍历器接口,字符串也可以解构赋值。这是因为此时,字符串被转换成了一个类似数组的对象。
网友评论