在我们公司,我们正在启动一个新的网页项目。我是这家公司的新员工,之前已经有一些应用程序使用以下方式来准备文档(顺便提一下,我们正在使用jQuery)。
var AccountingMovements = function AccountingMovements() {
//sometimes they use var _that = this;
var _this = this;
_this.Constructor = function Constructor() {
//here goes the code when document is ready
}
}
var $AccountingMovements = new AccountingMovements();
$(document).ready($AccountingMovements.Constructor);
当我问我的同事为什么要使用这种模式,他们告诉我Javascript代码必须有自己的构造函数,并且代码应该像这样编写。当我询问是否公司规定这样做,他们说没有,没有任何公司标准规定应该这样编写。看起来他们之所以这样做是因为“一直以来都是这样做的”,而不是因为这是常见的Javascript标准化实践或类似的东西。
在我方面,我学习使用IIFE和jquery文档就绪,在很多Javascript大师给出的网页示例中找到了这个方法的实际解释,甚至还有一个维基百科文章。我用这种方式编写我的代码。
(function (code) {
code(window.jQuery, window, document);
}(function ($, window, document) {
$(function () {
//here goes the code when document is ready
});
}));
我的开发负责人(他对JavaScript并不是很了解,因为他来自桌面开发背景,但在业务逻辑方面很擅长)告诉我,由于这是一个新项目,每当我看到一个新的解决方案、更好的实现或者有助于工作的东西时,我必须毫不犹豫地告诉他,他会和其他领导讨论。所以我告诉他我的方法,并且我不理解旧的构造函数代码的目的,也没有人给我一个令人信服的解释,他告诉我自己去查找支持那种方法的资源,以便在情况需要的时候告诉命令,抛弃另一种方法。
所以经过这一切,我的问题是:
JavaScript构造函数方法有一个名称吗?我的意思是,这是一个实际的标准、实践还是建议吗?因为我找不到任何关于它的信息。它可能是我错了,构造函数方法更好或有效,但因为我没有相关信息,我需要确定才能讨论我的实现。
提前致谢。
(function($, etc) {...})(jQuerry, etc);
这种稍微简单一点的方式呢?这不是一样的吗? - DanielM