ES6解构赋值:简单示例

解构赋值: 是对赋值运算符的扩展。是一种针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。在代码书写上简洁且易读,语义更加清晰明了;也方便了复杂对象中数据字段获取。

1.数组的解构赋值 (按顺序解构)
把数组里的元素按顺序赋值给四个变量:
如果解构的变量少于数组元素,那么就只解构前几个元素。
如果解构的变量多于数组元素,那么多余的变量就是undefined。

var arr = [4, 3, 9, 7]
    var [a, b, c, d, e] = arr
    console.log(a)   //打印4
    console.log(b)   //打印3
    console.log(c)   //打印9
    console.log(d)   //打印7
    console.log(e)   //打印undefined**2.对象的解构赋值**

2.对象的解构 (按属性名解构)
对象的解构是按照属性名来解构的:
声明的变量要对应对象里的属性名,才能拿到属性值;
如果去解构一个对象里不存在的属性,得到undefined。

// 对象是无序的,没有length属性
    var obj = {
      username: 'lisi',
      age: 20,
      gender: 'male',
      say: function () {
        console.log(this.age)
      }
}
var { gender, age, aaa, say } = obj // var age = obj.age
    
    console.log(age) // 打印20
    console.log(gender) // 打印male
    console.log(aaa) // 打印undefined

注: say方法解构出来就是一个全局函数了,可以直接调用,相当于

var say = obj.say
    say()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值