0

我有以下代码:http: //jsfiddle.net/pepNU/1/

我想对“YourGame”以及其中的“设置”进行静态引用,所以我能想到的唯一方法是将它添加为私有变量(如果你愿意,可以使用类),然后将其作为变量引用在 YourGame 的返回中,因此它可以被称为:

YourGame.Settings.GetFrameRate();

您对此有何看法?我应该对命名空间做更多类似的事情吗:

YourGame.Settings = function... 

我显然不能只在返回中插入函数,因为然后我无法通过像前面提到的简单调用来访问设置中返回的 GetFrameRate() 函数

4

1 回答 1

0

您所做的很好,但是由于您只需要一个实例并且没有构造函数逻辑,因此您也可以使用对象文字:

var YourGame = {
    Settings : {
        // ...
    },
    // ...
}

如果您需要具有“静态”属性的可实例化“类”,也可以直接向构造函数添加属性:

var YourGame = function() {
   // constructor logic
}
YourGame.foo = 10; // static property
var game = new YourGame; // instance
game.foo; // undefined
YourGame.foo; // 10
于 2013-08-13T14:53:49.813 回答