我有一个严肃的项目,其中包含具有许多功能的大型 JS 文件,现在我对此有一些疑问。
当然,我会把我所有的 js 文件放在一起并 gzip,但我有一个关于函数初始化的问题。现在我有很多很多简单的功能,没有任何类。我听说最好将我的代码分成许多类,我想这样做,并在我的脚本中的页面生成步骤标记,我需要在特定页面上使用哪些类。例如,我不需要主页上的 WYSIWYG 编辑器,等等,所以我将创建特殊的 var,其中包含我需要的 js 类数组。这是最佳做法吗?客户能否节省性能和内存?
假设我有很多带有 onclick 操作的链接。更好的是:将它们保留为
<a href="#" onclick="return smth();">
或重写为<a href="javascript:void(0);">
并在 document.ready 部分创建 jquery .bind?但是,如果客户想在文档准备好之前单击某些内容怎么办?单击某项后,我必须创建一个具有特定静态 html 的 div。将这些内容存储在哪里更好?在我类的某个变种?或者可能在某个模板中?
最佳答案
我通常使用命名空间来组织我的 JavaScript 以防止函数名称冲突,并进一步将每个对象添加到它自己的 .js 文件中以进行组织
var MyObject = function() {
return {
method_1 : function() {
// do stuff here
},
method_2 : function() {
// do stuff here
}
};
}();
MyObject.method_1();
MyObject.method_2();
然后我导入页面上需要的任何内容。拥有一些未在页面上使用的额外全局函数不会对性能产生显着变化。
有些人将 HTML 中的整个 onclick 变成了一场盛大的哲学辩论......对我来说,它很脏,但易于阅读和快速实现。绑定(bind)事件效果很好,可以将 JavaScript 与 HTML 完全分开,但如果由许多开发人员维护的 HTML 变得非常草率,有时可能难以维护
在 JavaScript 中保留 HTML 位对我来说效果很好
关于javascript - 如何组织JS加载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2266804/