Javascript自执行函数查询

时间:2014-08-01 16:58:08

标签: javascript

我正在浏览一些github库,其中我遇到了以下几行:

//Util.js
(function(exports,global){
  global["true"] = exports;

  "use strict";
   ...rest of the code here        


})({}, function() {
    return this;
}());

上述文件直接包含在index.html中。 我知道JS中自执行函数的概念。但是上面提供了什么目的呢?

1 个答案:

答案 0 :(得分:0)

该脚本引用全局' '持有一个名为“真实”的房产。它包含一个名为' exports'的对象。你可能已经想到了。此脚本似乎是初始化某些功能的脚本。

我猜他们为什么这样做是因为他们期待这个'可能不仅仅是在浏览器中运行(例如,在单元测试时可能用于注入模拟),因此它是一种抽象全局对象的方法。

'出口'和'全球'参数仅作为参数提及,并在脚本中设置属性global [" true"]时。这就是为什么我认为它是一个初始化脚本,而后面的其他相关脚本将使用exports变量。这些相关的脚本也可能正在测试(或其他),因此它们的全局对象可能与此相同。