我正在尝试将所有javascript函数放在一个命名空间中。我有两个javascript文件,我试图将所有函数的文件放入一个命名空间。所以当我为两个文件定义相同的命名空间时。第一个由第二个写完。我已经在两个文件中定义了我的命名空间,如下所示。有没有办法可以阻止这个将所有功能放到一个文件中?谢谢你的帮助。
var mynamespace={
foo:function(){Som code},
bar:function(){some code}
};
答案 0 :(得分:1)
是的,你可以。在每个文件中:
var mynamespace = mynamespace || {};
然后选择您拥有的文件的下一行:
mynamespace.foo = function () {
或
mynamespace.bar = function () {
基本上,这样做的目的是将mynamespace
的当前值分配给mynamespace
(如果存在)。否则,它会创建一个新对象。请注意,根据您是否在上面声明mynamespace
,您可能需要使用此排行代码:
if (typeof mynamespace === 'undefined') { var mynamespace = {} }