我图书馆的大部分部分都是由具有类似结构的文件组成的,
myLib.Something = (function() {
function Something() {
}
return Something;
})();
现在假设在Something
我使用的内部document
,window
现在我的文件看起来像这样;
myLib.Something = (function() {
function Something(id) {
this.somethingElse = document.getElementById(id);
}
return Something;
})();
在Something
的构造函数中使用 document 时,我应该将 document 传递给 IIFE,使其如下所示;
myLib.Something = (function(document) {
function Something(id) {
this.somethingElse = document.getElementById(id);
}
return Something;
})(document);
或者我应该只在变量在外部使用时将它们传递给 IIFE Something
?如下图,
myLib.Something = (function(document) {
var document = document;
function Something() {
}
return Something;
})(document);