H5W3
当前位置:H5W3 > 其他技术问题 > 正文

请教一个立即执行函数的this问题

let foo ='zzz'
var myobject = {
foo: "bar",
func: function () {
(function () {
console.log(this.foo); //undefined
})();
}
};
myobject.func();

请教一下,上面的代码块,不管是在nodejs中还是浏览器环境中,都是打印出undefined
原理是什么呢

回答

this指向window,然而let const不会给window绑定属性,var可以。

立即执行函数的执行上下文是全局上下文,因此this指向的是window

本文地址:H5W3 » 请教一个立即执行函数的this问题

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址