zoukankan      html  css  js  c++  java
  • ES6知识点整理之----解构赋值----对象

    1、对象解构和数组解构不同点:数组是按次序排列的,取值按位置决定;对象没有次序,变量必须与属性同名,才能取到正确的值

    2、对象解构:

        //完整写法:
        let { foo: foo, bar: bar } = { foo: "aaa", bar: "bbb" };
    
        //简写:
        let { foo, bar } = { foo: "aaa", bar: "bbb" };

    3、对象的解构赋值的内部机制,是先找到同名属性,然后再赋给对应的变量。真正被赋值的是后者,而不是前者。

    4、与数组一样,解构可以用于 结构的对象

        let obj = { p: [ 'Hello', { y: 'World' } ] }; 
        let { p: [x, { y }] } = obj; 
        x // "Hello" 
        y // "World"

    5、对象的解构也可以指定默认值。默认值生效的条件是,对象的属性值严格等于undefined

    var {x = 3} = {}; x // 3 
    var {x, y = 5} = {x: 1}; x // 1 y // 5 
    var {x: y = 3} = {}; y // 3 
    var {x: y = 3} = {x: 5}; y // 5 
    var { message: msg = 'Something went wrong' } = {}; msg // "Something went wrong"
    var { x = 3 } = { x : undefined}; x // 3
    var {x = 3} = { x : null } x // null
  • 相关阅读:
    梦断代码阅读笔记之一
    你的灯亮着吗阅读笔记之三
    第二次冲刺第八天
    第二次冲刺第七天
    价格计算
    第二次冲刺第六天
    构建之法阅读笔记06
    第二阶段冲刺第五天
    第二阶段冲刺第四天
    第二阶段冲刺第三天
  • 原文地址:https://www.cnblogs.com/adhehe/p/9641178.html
Copyright © 2011-2022 走看看