0

我试图将我所有的 javascript 函数放在一个命名空间中。我有两个 javascript 文件,我试图将这两个文件的所有函数都放在一个命名空间中。因此,当我为两个文件定义相同的命名空间时。第一个被第二个覆盖。我已经在两个文件中定义了我的命名空间,如下所示。有没有一种方法可以阻止其他将所有功能放到一个文件中?谢谢您的帮助。

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

1 回答 1

1

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

var mynamespace = mynamespace || {};

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

mynamespace.foo = function () {

或者

mynamespace.bar = function () {

基本上,它所做的是分配一个当前值mynamespacetomynamespace如果它存在的话。否则,它会创建一个新对象。请注意,根据您是否在mynamespace上面声明,您可能需要将这条线放在顶部:

if (typeof mynamespace === 'undefined') { var mynamespace = {} }
于 2013-03-28T03:10:29.100 回答