ES6新特性四:变量的解构赋值实例

时间:2021-05-28

本文实例讲述了ES6新特性之变量的解构赋值。分享给大家供大家参考,具体如下:

1. 数组的解构赋值

//① 可以从数组中提取值,按照对应位置,对变量赋值var [a, b] = [1, 2]; //a = 1;b = 2//② 下面是一些使用嵌套数组进行解构var [d, [[c], f]] = [1, [[2], 3]];var [,,third] = ["foo", "bar", "baz"];//third = "baz"var [head, ...tail] = [1, 2, 3, 4];//head = 1;tail = [2, 3, 4]//③不完全结构var [x, y] = [1,2,6]; //x = 1;y = 2//④ 解构赋值允许指定默认值var [foo = true] = []; //foo = truevar [x, y='b'] = ['a'] // x='a', y='b'var [x, y='b'] = ['a', undefined] // x='a', y='b'//⑤ 解构不成功,变量的值就等于undefinedvar [a6, a7] = [1]; //a7 = undefined

2. 对Set 的解构赋值

[a, b, c] = new Set(["a", "b", "c"])console.log(a) // "a"

3. 对象的解构赋值

//对象的属性没有次序,变量必须与属性同名,才能取到正确的值var { x, y } = { x: "aaa", y: "bbb" };//x = aaa, y = bbbbvar { c } = { a: "aaa", b: "bbb" }; // c = undefined//严格遵守变量名与属性同名var { d: e } = { d: "aaa", f: "bbb" }; //e = aaa//指定默认值var {x, y = 5} = {x: 1};// x = 1,y = 5

4. 用于遍历 Map

var map = new Map();map.set('first', 'hello');map.set('second', 'world');//获取键值对for (let [key,value] of map) { console.log(key + " is " + value);}// 获取键名for (let [key] of map) { console.log(key);}// 获取值for (let [,value] of map) { console.log(value);}

希望本文所述对大家ECMAScript程序设计有所帮助。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章