const { username, password } = login疑问?

const { username, password } = login疑问?

相关代码:

const { username, password } = login;

问题描述:

我理解老师上面代码用意是利用结构赋值一起获取login.username和login.password这两个字段。

但对象结构赋值之前老师不是说,一是要模式结构要匹配即{}={},二是属性名完成相同。上面的右边的login不是form标签呢?不是对象啊,可以说下这行代码吗?谢谢

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

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

1回答
好帮手慕夭夭 2021-01-22 17:29:30

同学你好,问题解答如下:

1、通过document.getElementById('login')获取元素,返回的是一个dom对象。只不过我们输出login时,它是以html标签的形式展现的,但是本质上它是对象,所以可以进行对象的解构赋值。

2、login元素中是有子元素的,通过login.username这种对象获取属性的语法,能够获取到子元素。

http://img1.sycdn.imooc.com//climg/600a996e09269d8804750109.jpg

即如下:

http://img1.sycdn.imooc.com//climg/600a999d0946b3a705620080.jpg

虽然输出的也是html标签元素,但是它们是dom对象。既然能够通过username和password属性去获取login中的子元素,那么也就可以使用解构赋值的方式,查找到username和password属性进行解构赋值。

如果同学不理解,可以固定记一下,这里返回的是一个dom对象,所以可以使用对象的解构赋值哦。

祝学习愉快~

  • 提问者 好帮手慕斯林 #1

    好的,了解了,很棒!!获取元素返回的是dom对象,就是不理解什么是它的键值对而已

    2021-01-22 17:45:13
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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