我承认我在 JavaScript 方面还很不成熟,而且每次我认为我得到它的时候,一些奇怪的曲线球都会让我马上离开,这并没有帮助。
我有一个类似这样的 js 文件:
(function (myiife, $) {
var myArrayOfThings = [];
myiife.myFunction = function (id) {
var cachedThing = myiife.getFromArray(id);
if (cachedThing === null) {
// get from server
} else {
// do something with cached item
}
};
myiife.getFromArray = function (idToFind) {
for (var i = 0, len = myArrayOfThings; i < len; i++) {
if (myArrayOfThings[i].Id=== idToFind) {
return myArrayOfThings[i]; // Return as soon as the object is found
}
}
return null;
};
}(window.myiife= window.myiife|| {}, jQuery));
真正让我困惑的是期望能够调用事物的正确方法。我想我真的不了解事情的范围,而且我很难说实话。
如果我想从页面调用 myFunction 是否应该看起来像这样?
onclick="myiife.myFunction(1)"
我已经阅读了有关范围的内容,但显然在我对这一切的理解中仍然缺少一些非常基本的东西。
从我看到的示例中,我看不到其他似乎必须在函数名称前面加上iife
名称才能从页面执行事物的示例。
任何好的推荐阅读也将不胜感激。