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

《Javascript高级程序设计》这本书中关于this对象的一段话如何理解?

《Javascript高级程序设计》这本书中关于this对象的一段话如何理解?

qq_遁去的一_1 2019-03-21 11:11:09
《Javascript高级程序设计》这本书里提到,每个函数在被调用时都会自动取得两个特殊变量时,只会搜索到其活动对象为止,因此永远不可能直接访问外部函数中的这两个变量。所以是不是可以理解为会一直访问到全局变量才会停止呢(没有绑定的话)?以下是代码:var name = "The Window";var object = {  name : "My Object",  getNameFunc : function(){    return function(){      return this.name;    };  }};alert(object.getNameFunc()()); //"The Window"
查看完整描述

4 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

函数里的this只有被运行时才会被绑定,而这个函数执行的时候是普通方式,所以里面的this永远被标记为全局对象,反正一个函数或者方法被执行的时候最多就四种,有本书叫你不知道的JS这里面将this我觉得讲的还挺不错的,你可以直接翻到那边看看。
其实js的this有一定迷惑性,但其实都逃脱不了那四种情况,安情况对应就好,不然很容易被绕晕

查看完整回答
反对 回复 2019-03-21
  • 4 回答
  • 0 关注
  • 378 浏览
慕课专栏
更多

添加回答

举报

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