推荐使用JavaScript中的命名空间技术?高性能?需要注意的问题?

Bja*_*rtr 4 javascript namespaces structure

在我正在研究的项目中,我正在构建我的代码,如下所示

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
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

等等做这样的事情:

var anInstance = new MyLib.ASubNamespace.AClass("A parameter.");
Run Code Online (Sandbox Code Playgroud)

这是实现命名空间的正确方法吗?是否有性能命中,如果有,有多激烈?当我嵌套更深时,性能降级是否堆叠?使用此结构时是否还有其他问题需要注意?

我关心每一点性能,因为它是一个实时图形库,所以我非常重视任何开销.

Upp*_*age 5

我建议命名空间是编写可维护JavaScript的关键部分 - 特别是如果你与一组开发人员合作.

如果在生产过程中压缩/最小化代码,那么与命名空间相关的性能问题应该是最小的.

以下是使用命名空间的替代方法的SO讨论.