以这段代码为例:
(function(foo) {
foo.init = function() {};
// other public/private methods here.
return foo;
}(window.FOO = window.FOO || {}));
我这样称呼它:
FOO.init();
是否可以允许用户定义是什么FOO?
换句话说,我需要允许多个实例window.FOO; 例如,喜欢window.BILLY和window.BAZ(或者,应该是window.billy.FOO和window.baz.FOO?)。
换句话说,是否有一种优雅的方式(允许用户)使用上述构造和初始化的变体来命名“命名空间”?