es6小白学习笔记(二)

变量解构赋值

定义:按照一定模式,从数组和对象中提取值,对变量进行赋值

1.数组的解构赋值

//es5为变量赋值
var a = 1;
var b = 2;
var c = 3;

//es6为变量赋值,按照对应位置,对变量赋值
var [a, b, c] = [1, 2, 3]; 

//这种写法属于“模式匹配”,只要等号两边的模式相同,左边的变量就会被赋予    右边对应的值
let [foo, [[bar], baz]] = [1, [[2], 3]];

let [ , , third] = ["foo", "bar", "baz"];    //third = baz

let [head, ...tail] = [1, 2, 3, 4];    //head = 1   tail = [2, 3, 4]

let [x, y, ...z] = ['a'];  //x = "a"   y = undefined   z = []  
//如果解构不成功,变量的值就会等于undefined   eg:
let [foo] = [];
let [bar, foo] = [1];

 

posted @ 2017-01-12 16:09  大山深处的小龙虾  阅读(133)  评论(0)    收藏  举报