不同的JS命名空间声明

时间:2017-01-17 08:40:47

标签: javascript object javascript-objects javascript-namespaces

我想知道,以下代码示例是否相同?

版本1:

var myNamespace = {};
myNamespace.say = function() {...}

第2版(JS-Fiddle:https://jsfiddle.net/542wbkat/):

var myNamespace = new function() {
    this.say = function() {...};
}

第3版:

var myNamespace = {
    "say": function() {...}
}

我来自纯Java背景,这对我来说有点混乱。我测试了代码,它一切正常,但我想知道JS内部是否以不同方式处理版本。在写这篇文章之前,我在Mozilla开发网络https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects上阅读了一篇文档,但我仍然无法解决这个问题。

其他问题: 我可以在' myNamespace'中创建的功能命名空间是否被实例化(作为类的实例)?或者我得到了这个

干杯!

1 个答案:

答案 0 :(得分:0)

所有方式都是一个对象

没有区别

[MESSAGES CONTROL]
disable=bad-continuation,...