我想在 JS 中实现模块模式。我在谷歌上关注了一些帖子并开始编写自己的帖子。这是我想要达到的目标
mns - will be the name space for my lib
math - will be one of the sub-module in mns
我希望所有这些模块都在单独的文件中。
这是 mns.js 文件代码(仅用于命名空间,其中没有函数)
var mns = (function () {
return {};
})();
这是 math.js 代码(我希望它作为 mns 的子模块)
var submodule = (function (mns) {
var math = (function(){
var counter = 0;
var incrementCounter = function () {
return counter++;
}
var resetCounter = function () {
alert( "counter value prior to reset: " + counter );
counter = 0;
}
})();
mns.math = math;
return mns;
})(mns || {});
我期待 application.js 会像下面这样调用
mns.math.incrementCounter();
mns.math.resetCounter();
现在,Cannot read property of undefined
调用 incrementCounter 和 resetCounter 时出现错误。请指导我。