es6解构赋值(2)

来源:互联网 发布:postgresql 数据加密 编辑:程序博客网 时间:2024/05/02 00:14
// 对象的解构赋值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