我看到很多带有功能的命名空间示例,但是它是o.k.以这种方式声明变量(全局到我的程序)?
var mynamespace = {}; mynamespace.var1 = 5;
或者是否应将所有变量放在命名空间中的函数中?
答案 0 :(得分:0)
你应该避免全局变量...... 请改用某种模块模式,例如
(function () {
"use strict";
var myVar = 'blob';
}());
请参阅http://yuiblog.com/blog/2007/06/12/module-pattern/
编辑:
更多澄清:
var NS1 = NS1 || {};
NS1.myModule = function () {
"use strict";
var myVar = 'blob';
return {
myPublicMethod: function () {
return myVar;
}
};
}();