小编Mar*_*ark的帖子

IIFE 中的“this”关键字上下文

function foo() {
  console.log(this.a);
}

var a = 2;

(function() {
  "use strict";

  foo(); // 2
})();
Run Code Online (Sandbox Code Playgroud)

我只是想知道,怎么调用foo()仍然给出值 2?我认为因为fooIIFE内部被调用,然后this.a会评估为undefined,因为IIFE 中没有a变量。

javascript

6
推荐指数
1
解决办法
90
查看次数

标签 统计

javascript ×1