我在 Javascript 中模拟了一个静态类变量。
MyObject.staticVariable = "hello world";
function MyObject() {
// do something
}
MyObject.prototype.someFunction = function() ...
我不明白为什么这种语法有效,因为在分配 staticVariable 属性之前我没有显式创建 MyObject (我怎么可能仍然有一个 MyObject 函数?)。但它确实有效,我在许多问题的答案中都看到了它:如何在 Javascript 中模拟静态类变量?
在命名空间中声明 MyObject 函数时,如何实现此功能?
var Namespace = {};
// Not allowed, and for good reason in my eyes, as NameSpace.MyObject does not exist
Namespace.MyObject.staticVariable = "hello world";
Namespace.MyObject = function() {
// do something
}
Namespace.MyObject.prototype.someFunction = function() ...
让我知道我是否可以澄清和/或我的想法是否错误。谢谢。