In a 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.");
这是实现命名空间的正确方法吗?性能是否受到影响?如果有,影响有多大?当我嵌套得更深时,性能下降是否会叠加?使用此结构时还有其他问题需要注意吗?
我关心每一点性能,因为它是一个实时图形库,所以我非常认真地对待任何开销。
我认为命名空间是编写可维护的 JavaScript 的关键部分 - 特别是当您与开发团队合作时。
如果您这样做,与命名空间相关的性能问题应该是最小的压缩/最小化你的代码正在投入生产的路上。
Here is 一个SO讨论使用名称空间的替代方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)