我们可以为两个javascript文件添加相同的命名空间吗?

时间:2013-03-28 03:08:06

标签: javascript html javascript-namespaces

我正在尝试将所有javascript函数放在一个命名空间中。我有两个javascript文件,我试图将所有函数的文件放入一个命名空间。所以当我为两个文件定义相同的命名空间时。第一个由第二个写完。我已经在两个文件中定义了我的命名空间,如下所示。有没有办法可以阻止这个将所有功能放到一个文件中?谢谢你的帮助。

var mynamespace={
foo:function(){Som code},
bar:function(){some code}
};

1 个答案:

答案 0 :(得分:1)

是的,你可以。在每个文件中:

var mynamespace = mynamespace || {};

然后选择您拥有的文件的下一行:

mynamespace.foo = function () {

mynamespace.bar = function () {

基本上,这样做的目的是将mynamespace的当前值分配给mynamespace(如果存在)。否则,它会创建一个新对象。请注意,根据您是否在上面声明mynamespace,您可能需要使用此排行代码:

if (typeof mynamespace === 'undefined') { var mynamespace = {} }