请问老师width(person)下的score为什么可以写在这里

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

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

2回答
好帮手慕夭夭 2020-03-14 20:48:40

@qq_慕粉9137647同学你好,score不是person的属性。老师说相当于person的属性 ,意思是说会先去person中去查找 score属性。但是person中没有定义,所以往上一个作用域中去查找,找到了window中定义的score , 这就是延长作用域。

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

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

好帮手慕言 2020-01-31 14:16:09

同学你好,with这个方法,有延长作用域链的效果。本身person中是没有score这个参数的,使用了with()之后,会去全局中查找,并修改。所以打印出来是44。

一般不会用with这个方法,了解一下即可。

如果帮助到了你,欢迎采纳,祝学习愉快~

  • 视频中老师说这里面的变量都相当于是person的属性,请问这里的score还算是person的属性吗?
    2020-03-14 17:26:31
  • 同学你好,score并不是person的属性,只是with()的作用而已。祝学习愉快!
    2020-03-14 20:35:08
  • 什么意思呀?老师说这里面的变量都相当于是person的属性,所以在这里面设置和name和sex外面的person.name和person.sex都会发生改变,那这里的score是什么?为什么它修改的是外面的score而不是新设置的一个person的属性person.score呢? 如果with的外面还有一个单独的var name='xl';那这里面的name会是修改谁的呢?
    2020-03-14 20:43:59
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
2.组件化网页开发
  • 参与学习           人
  • 提交作业       1121    份
  • 解答问题       14456    个

本阶段在运用JS实现动态网页开发的基础上,带你深入理解企业开发核心思想,完成一个企业级网页的开发,体验前端工程师的成就感。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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