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

 

转载于:https://www.cnblogs.com/adhehe/p/9641178.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值