如何提取高度嵌套的对象的指定属性

有时候会遇到一些嵌套程度非常深的对象

const store={
goods:{
water:{
drinks:'wahaha'
}
//vegetable:'spinach'
}
}

此时的drinks嵌套4层,此时如果仍然尝试老方法提取:

const {drinks} = store

发现并不奏效,因为store对象本身并没有drinks这个属性,因为drinks位于第四层,因此想要把drinks提取出来,一种比较低级的做法:

const {goods} = store
const {water} = goods
const {drinks} = water 
console.log(drinks)  //wahaha

但是还有一种比较标准的做法,可以解决这个问题:

const {goods:{water:{drinks}}} = store

console.log(drinks)  //wahaha 

结论:

可以在结构出来的变量名右侧,通过冒号+{目标属性名}这种形式,进一步结构它,一直结构到拿到目标为止

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值