不太理解这道题,为什么baz是‘aaa', {foo:baz}表示什么意思,而且

不太理解这道题,为什么baz是‘aaa', {foo:baz}表示什么意思,而且

const {skill:[skill,{skillName},{skilName:sklName}]} = player;

也不太理解,skillName 表示的值,skilName:sklName  也是表示skilName什么意思?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕星星 2020-06-21 09:54:42

同学你好,这是对象的解构赋值。等号右侧是一个字面量对象

http://img1.sycdn.imooc.com//climg/5eeebac709097aae05070054.jpg

等号左边是解构的,对象解构是通过属性名来的,一致即可

http://img1.sycdn.imooc.com//climg/5eeebb020963e75a04700265.jpg

foo就是对象中的foo属性,baz是额外的变量,foo获取到属性值之后赋值给baz变量,那么baz代表的就是属性值‘aaa’。通常要获取‘aaa’值,不写右侧的变量也可以,例如:

http://img1.sycdn.imooc.com//climg/5eeebc11092848ff04140252.jpg

http://img1.sycdn.imooc.com//climg/5eeebc1709cb6c9902130076.jpg

最主要是通过属性名获取。

另外课程中这段代码const {skill:[skill,{skillName},{skilName:sklName}]} = player;主要是获取了两个对象中的skillName值,两个相同变量不能同时存在,所以第二个变量赋值给了另一个变量sklName

http://img1.sycdn.imooc.com//climg/5eeebdd6099fec1113490762.jpg

自己测试理解下,祝学习愉快!

  • GKWBTT #1

    这回答详细,有用。

    2021-05-18 12:56:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师