我有以下代码:http://jsfiddle.net/pepNU/1/
我想对“YourGame”和它内部的“Settings”进行静态引用,所以我想到这样做的唯一方法是将它添加为私有变量(如果你愿意的话),然后引用它作为YourGame回归中的一个变量,因此它可以被称为:
YourGame.Settings.GetFrameRate();
您对此有何看法?我应该做更像这样的命名空间:
YourGame.Settings = function...
我显然不能只是修改返回内部的函数,因为我无法使用像上面提到的简单调用一样在Settings中返回GetFrameRate()函数
答案 0 :(得分: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