es6--解构赋值

2021-06-10  本文已影响0人  lvyweb

基本概念

简单的例子

 let node = {
        type:'iden',
        name:'foo'
    }
    // es5取值
    // let type = node.type; 
    // let name = node.name;  

    // es6取值   完全解构

    let {type,name} = node;
    console.log(type,name);//iden foo

复杂的例子

//不完全解构,可以忽略某些属性
    let obj = {
        a:{
            name:'张三'
        },
        b:[],
        c:'hello lvy'
    }
    let {a} = obj;

    console.log(a)//{name: "张三"}

//剩余运算符
let {a,...res} = obj;
    console.log(res)//{b: Array(0), c: "hello lvy"}

//也可以用默认值
let {a,b=30} = {a:20}

对数组解构

let arr = [1,2,3];
let[a,b,c] = arr;
console.log(a,b,c);// 1 2 3

可嵌套解构

let [a,[b],c] = [1,[2],3];
 console.log(a,b,c)
上一篇下一篇

猜你喜欢

热点阅读