任何人都可以用一个例子来解释JavaScript中的命名空间?

我有点困惑于JavaScript中的函数名字空间。 我可以有同名的功能吗?

谢谢


JavaScript中没有官方的命名空间概念,就像C ++中的一样。 但是,您可以用Javascript对象封装函数来模拟名称空间。 例如,如果您想在称为MyNamespace的“名称空间”中编写函数,则可以执行以下操作:

var MyNamespace = {};

MyNamespace.myFunction = function(arg1, arg2) {
    // do things here
};

MyNamespace.myOtherFunction = function() {
    // do other things here
};

然后,为了调用这些函数,你可以编写MyNamespace.myFunction(somearg, someotherarg);MyNamespace.myOtherFunction();

我还应该提到在Javascript中有很多不同的方式来进行命名空间和类的事情。 我的方法只是其中之一。

有关更多讨论,你可能也想看看这个问题。


目前,如果您指的是ECMAScript 6 / JavaScript 2命名空间,则没有JavaScript实现支持命名空间。

如果您指的是今天如何完成命名空间,那只需要使用一个对象,并将想要定义的每个方法放到它上面。

var myNamespace = {};
myNamespace.foo = function () { /*...*/ };
myNamespace.bar = function () { /*...*/ };
链接地址: http://www.djcxy.com/p/17037.html

上一篇: Can anyone explain namespace in javascript with an example?

下一篇: if to finish, to make sure that the DOM is ready