本文實例講述了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 = 54. 用于遍歷 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程序設計有所幫助。
新聞熱點
疑難解答