好的,所以我已经厌倦了很多事情。我仍然感到困惑,我知道答案会变得非常简单,但无论如何我都要问。
我有一个功能:
Module.load = function(a) {
require("./modules/"+a+".js");
Module.loaded.push(a);
Log("Loaded Module: "+a);
};
使用Module.load('basic');
加载基本文件。
现在,我通过一个对象定义模块:
Modules = { basic:1,queue:0,admin:1,notify:0 }
所以我写了这个函数:
for (x in Modules) { if (Modules[x] == 1) Module.load(x); };
但它不起作用,对于我的生活,我无法弄清楚原因。
答案 0 :(得分:4)
代码有效:
var Module = {}; Module.load = function(a) {
console.log("Loaded Module: "+a);
};
var Modules = { basic:1,queue:0,admin:1,notify:0 }
for (var x in Modules) { if (Modules[x] == 1) Module.load(x); };
Loaded Module: basic
Loaded Module: admin
因此,问题必须在其他地方。确保:
Module.loaded
存在并且是一个数组require
被定义为一个函数并且不会崩溃Log
被定义为一个函数并且不会崩溃