昨晚在一场失眠症中我意识到 - 在我的情况下,也许模块模式可能不是必需的。我有一堆像这样的“类”:
if (typeof MyApp === 'null') MyApp = {};
MyApp.MyClass = function ()
{
this.func1 = function ()
{
}
this.func2 = function (
{
}
}
我一直在将它们转换为这样的模块模式(因此它们大致相同 - 只是包含在一个自动执行的匿名函数中):
if (typeof MyApp === 'null') MyApp = {};
(function (win, doc, null)
{
MyApp.MyClass = function ()
{
this.func1 = function ()
{
}
this.func2 = function (
{
}
}
})(window, document);
但是因为evrything无论如何都在MyApp.MyClass“class”函数中 - 它不是真的有必要吗?毕竟,唯一暴露的是MyClass变量。