美文网首页
ES6 学习(对象解构篇)

ES6 学习(对象解构篇)

作者: 淡淡的真 | 来源:发表于2016-08-05 15:23 被阅读0次

    - 对象解构赋值

    ** 对象的取值是由属性取值
    对象的值也可以设置默认值(见数组结构篇) **

    解构例子

    let { a,  b } = { a = "aaa", b = "bbb"};
    a  //  "aaa"
    b  //  "bbb"
    

    如果变量名与属性名不一致没关系,可以用下面的方法

    let {  a: b } = { a: "aaa" };
    a  //  a is not defined
    b  // "aaa"
    

    模式不会被赋值

    let obj = {
      person: {
        name : "Roy"
      }
    }
    let { person: { name }} = obj;
    person  //  undefined
    name  //  "Roy"
    

    默认值生效条件是对象的属性值严格等于 undefined

    let { a = 1 } = { a: undefined };
    a  //  1
    let { a = 1 } = { a: null };
    a  // null
    

    已声明变量的解构赋值必须非常小心

    let a = "aaa";
    {a} = { a: "bbb" };  //  error
    正确写法:
    ({a} = { a: "bbb" });
    a  //  "bbb"
    

    相关文章

      网友评论

          本文标题:ES6 学习(对象解构篇)

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