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

关于闭包里的this这个问题

关于闭包里的this这个问题

我是匿名 2017-07-13 10:37:14
var name='red';var obj= { name:"blue", getName:function() { return function(){ return this.name; } }};alert(obj.getName()());为什么这个出来的是red 而不是blue,这个function不是在obj的下面吗,我有点迷糊, 希望有人解答这个问题  谢谢了
查看完整描述

1 回答

已采纳
?
MR帽子先生

TA贡献245条经验 获得超106个赞

首先 name red 是全局变量,运行alert(obj.getName()());的时候已经指向blue,但是this指向的是整个函数,所以this。name 指向全局变量。希望对你有帮助,祝你学习愉快!

查看完整回答
2 反对 回复 2017-07-13
  • 1 回答
  • 0 关注
  • 1175 浏览
慕课专栏
更多

添加回答

举报

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