Namespacing Variables - javascript
我看到了很多带有函数的名称空间示例,但是,这样声明变量(对我的程序来说是全局的)可以吗?
var mynamespace=mynamespace.var1=5;
还是应该将所有变量都放在命名空间内的函数中?
你应该避免全局变量…而是使用某种模块模式,例如
1 2 3 4 | (function () { "use strict"; var myVar = 'blob'; }()); |
参见http://yuiblog.com/blog/2007/06/12/module-pattern/
编辑:
更多说明:
1 2 3 4 5 6 7 8 9 10 11 | var NS1 = NS1 || {}; NS1.myModule = function () { "use strict"; var myVar = 'blob'; return { myPublicMethod: function () { return myVar; } }; }(); |