【发布时间】:2011-01-07 08:07:02
【问题描述】:
在project 我正在研究我的代码结构如下
MyLib = {
AField:0,
ASubNamespace:{
AnotherField:"value",
AClass:function(param) {
this.classField = param;
this.classFunction = function(){
// stuff
}
}
},
AnotherClass:function(param) {
this.classField = param;
this.classFunction = function(){
// stuff
}
}
}
等等类似的事情来做这样的事情:
var anInstance = new MyLib.ASubNamespace.AClass("A parameter.");
这是实现命名空间的正确方法吗?是否有性能影响,如果有,影响有多大?当我嵌套更深时,性能下降会叠加吗?使用此结构时我还应该注意其他问题吗?
我关心每一点性能,因为它是一个实时图形库,所以我非常重视任何开销。
【问题讨论】:
-
Essential JS Design Patterns Book 包含关于命名空间模式的章节。
标签: javascript namespaces structure