组织大型javascript文件

时间:2014-08-18 17:47:32

标签: javascript jquery

我已经开始为网站积累相当多的Javascript代码。到目前为止,所有内容都在一个文件中,并且该文件变得无法维护。如果一行中有错误,则整个文件会中断。

我已尝试将代码拆分为多个文件,但有一些共享方法可用于:validateEmail(address)

现在,我将我的代码组织成对象,如下所示:

var ProductPage = {
    addToCartBtn: "#add-to-cart",

    init: function() {
        ProductPage.initAddToCartPopup();
        ProductPage.initSidebar();
        ...
    },
    ...
};

然后,我在ProductPage.init()上致电$(document).ready

我的问题是:将ProductPage拆分为单独的文件ContactPage时,例如我无法访问ContactPage.validateEmail()。我相信这是因为我的代码包含在jQuery中:

(function ($) {
    ...
})(jQuery);

有没有人了解他们如何组织大型Javascript系统?此外,我计划进行优化,将所有这些放入一个文件并压缩它。因此,任何有利于可维护性和易于优化的方法都会非常棒。

1 个答案:

答案 0 :(得分:3)

在我看来,

validateEmail类似方法功能。我的意思是y = f(x)。这些函数不会更改状态,而是返回输出,这些输出在传递的输入上计算

您可能希望将所有实用程序功能方法保留在单独的模块中,并将标记为全局命名空间。在使用之前,请务必加载此(这些)实用程序模块

您可以使用require.js进行依赖关系管理