美文网首页es6
ES6(解构赋值)

ES6(解构赋值)

作者: 余生筑 | 来源:发表于2017-09-15 09:35 被阅读0次

    书写方法

    1.左右结构一致
    2.声明与赋值在一句话内

    数组解构赋值

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

    json解构赋值

    let {a,b,c}={a:12,b:13,c:14}
    console.log(a,b,c) //12,13,14
    

    粒度控制

        let [json,arr,[a,b]]=[{e:5,f:7},[2,13,4],[90,91]]
            console.log(json,arr,a,b) //{e:5,f:7} [2,13,4] 90 91
    

    特殊情况

    只有当y对应的值===undefined时,y才会取默认值

    let [x,y='b']=['a']
    //y:'b'
    let [x,y='b']=['a',null]
    //y:'null'
    let [x,y='b']=['a',void,0]
    //y:'b'(void (0)===undifined返回true)
    let [x,y='b']=['a',0]
    //y:0
    

    默认参数

    function(z,f='a'){console.log(f)}
    foo('n',null)//'a'
    

    解构赋值的作用

    • 获取对象的属性/方法

    或者

    书写方法

    1.左右结构一致
    2.声明与赋值在一句话内

    数组解构赋值

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

    json解构赋值

    let {a,b,c}={a:12,b:13,c:14}
    console.log(a,b,c) //12,13,14
    

    粒度控制

        let [json,arr,[a,b]]=[{e:5,f:7},[2,13,4],[90,91]]
            console.log(json,arr,a,b) //{e:5,f:7} [2,13,4] 90 91
    

    特殊情况

    只有当y对应的值===undefined时,y才会取默认值

    let [x,y='b']=['a']
    //y:'b'
    let [x,y='b']=['a',null]
    //y:'null'
    let [x,y='b']=['a',void,0]
    //y:'b'(void (0)===undifined返回true)
    let [x,y='b']=['a',0]
    //y:0
    

    默认参数

    function(z,f='a'){console.log(f)}
    foo('n',null)//'a'
    

    解构赋值的作用

    • 获取对象的属性/方法

    或者

    等效于


    相关文章

      网友评论

        本文标题:ES6(解构赋值)

        本文链接:https://www.haomeiwen.com/subject/pbfssxtx.html