解構賦值(Destructuring Assignment)
var myarr = [1, 2, 3];
var [a, b] = myarr; // 宣告變數 a 和 b,值分別是 myarr 裡依序的資料
console.log(a); // 1
console.log(b); // 2
var myobj = {a: "test1", b: "test2"};
var {a, b} = myobj; // 宣告變數 a 和 b,值分別是 myobj 對應的 key
console.log(a); // test1
console.log(b); // test2
let a = 0;
let b = 1;
[a, b] = [b, a]; // 將原來 b 的值給變數 a;將原來 a 的值給變數 b
console.log(a); // 1
console.log(b); // 0
let arr = ["a", "b", "c", "d"];
[arr[1], arr[2]] = [arr[2], arr[1]];
console.log(arr); // ["a", "c", "b", "d"]