ES6(2)-解构赋值
概念 ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构赋值。 如: var a = 1 ; var b = 2 ; var c = 3 ; 在ES6中可以这么做: var [ a , b , c ] = [ 1 , 2 , 3 ] ; 如果解构不成功,变量的值就等于 undefined . 如果等号的右边不是数组(不是可遍历的结构),将会报错。 等式右边可以嵌套、可以忽略、…b表示剩余运算符(若赋值失败,空数组[]) 设置默认值 解构赋值允许设置默认值 let [ num = 2 ] = [ ] ; //num=2 let [ num1 , num2 = 2 ] = [ 5 ] ; //num1 = 5,num2 = 2 let [ x = 1 , y = x ] = [ ] ; //x = 1, y = 1 let [ x = 1 , y = x ] = [ 2 ] ; //x = 2, y = 2 let [ x = 1 , y = x ] = [ 1 , 2 ] ; //x = 1, y = 2 let [ x = y , y = 1 ] = [ ] ; //报错,因为x用到默认值y时,y还没声明 [ x , y = 'b' ] = [ 'a' , undefined ] ; //x = 'a', y = 'b' 对象的解构赋值 var { name