为了账号安全,请及时绑定邮箱和手机立即绑定

一道稍微综合综合点的JS题,关于with, this, 和call用法?

一道稍微综合综合点的JS题,关于with, this, 和call用法?

回首忆惘然 2019-04-21 20:39:51
题目:以下代码执行后输出的值分别是?varo={x:10,foo:function(){with(this){functionbar(){alert(x);alert(this.x);}varx=20;(function(){bar();})();bar.call(this);}}}o.foo();我不明白的:第二行x:10和直接写x=10有什么区别吗?第四行with(this),作用应该是延长作用域链?那在本题中具体是什么情况?在varx=20后,再次调用bar()为什么第一个是undefined,第二个是20?感觉这道题考察的蛮多的,拿出来和大家讨论下。题目测试结果:undefined,undefined,undefined,20.
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 364 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信