[javascript] Destructuring assignment
讀取陣列並 assign 到變數上
陣列的解構賦值用陣列去接1
2
3let foo = ['one', 'two', 'three'];
let [one, two, three] = foo;
console.log(one); // 'one'
物件的解構賦值
在ES6有支援物件的解構賦值,這就能用在更多的用途上。 例如這有點像 import module 的用法。
物件的解構賦值用物件去接1
2
3
4
5
6
7
8
9
10let myModule = {
drawSquare: function drawSquare(length) { /* implementation */ },
drawCircle: function drawCircle(radius) { /* implementation */ },
drawText: function drawText(text) { /* implementation */ },
};
let {drawSquare, drawText} = myModule;
drawSquare(5);
drawText('hello');
傳入 function 的解構賦值
解構賦值也允許你傳入 function ,並且 function’s parameter 指定要讀取哪一個 properties。
- js
1 | let jane = { firstName: 'Jane', lastName: 'Doe'}; |
陣列變數交換的用法
陣列可以用解構賦值的方式,交換陣列的值1
2
3
4
5
6let a = 1;
let b = 3;
[a, b] = [b, a];
console.log(a); // 3
console.log(b); // 1