如何正确设置JavaScript命名空间和类?

28 浏览
0 Comments

如何正确设置JavaScript命名空间和类?

似乎有很多种方法来设置一个JavaScript应用程序,因此很难确定哪种方法是正确或最好的。下面的技术有什么区别或更好的方法吗?

MyNamespace.MyClass = {
    someProperty: 5,
    anotherProperty: false,
    init: function () {
        //进行初始化
    },
    someFunction: function () {
        //做一些事情
    }
};
$(function () {
    MyNamespace.MyClass.init();
});

另一种方式:

MyNamespace.MyClass = (function () {
    var someProperty = 5;
    var anotherProperty = false;
    var init = function () {
        //做一些事情
    };
    var someFunction = function () {
        //做一些事情
    };
    return {
        someProperty: someProperty
        anotherProperty: anotherProperty
        init: init
        someFunction: someFunction
    };
}());
MyNamespace.MyClass.init();

第一种技术更像是一个类。如果我来自服务器端的背景,这可能会有所不同。第二种技术看起来更冗余和有些别扭,但我也经常看到它被使用。请问有人可以帮忙解惑并提供前进的最佳方法吗?我想创建一个有很多类相互通信的应用程序。

0