// 对象的解构赋值 let { foo, bar } = { foo: "aaa", bar: "bbb" }; //如果变量名与属性名不一致。 let { foo: baz } = { foo: 'aaa', bar: 'bbb' }; console.log(baz) // "aaa"
//length 属性 let {length: len} = 'hello'; console.log(len); // 5
// 函数参数的解构赋值 function fn([a, b]) { return a + b; } console.log(fn([1, 3])); //4
// 函数参数的解构也可以使用默认值。 function move({x = 0, y = 0} = {}) { return x + y; } console.log(move({x:5,y:9})); //14
//交换变量的值 let x = 1; let y = 2; [x, y] = [y, x]; console.log(x, y); //2 1