ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。
数组的结构赋值
下面可以对a,b,c进行赋值
//从数组中提取值,按照对应位置,对变量赋值。
let[a,b,c]=[1,2,3];
// a=1;
// b=2;
// c=3;
其它赋值方法
let [foo, [[bar], baz]] = [1, [[2], 3]];
// foo = 1
// bar = 2
// baz = 3
let [ , , third] = ["foo", "bar", "baz"];
// third = "baz"
let [x, , y] = [1, 2, 3];
// x = 1
// y = 3
let [head, ...tail] = [1, 2, 3, 4];
// head = 1
// tail = [2, 3, 4]
let [x, y, ...z] = ['a'];
// x = "a"
注意第4种赋值语句中的 “…” 表示从当前位置到末尾的所有数据。故 let [head, …tail,end] 这种写法系统会报错。Uncaught SyntaxError: Rest element must be last element
解构不成功
let [foo] =