我试图了解使用多个初始化函数背后的概念是不是坏习惯。通过初始化函数我的意思是以下任何一种:
$(document).ready(function(){
//... some code here
}
(function(){
//.... some code here
})();
我一次又一次地看到正在使用多个初始化函数,我一直认为这最终是一个不好的做法,但我真的错了吗?
基于此,有人会关心使用多个初始化函数是否是好的或坏的做法?
编辑:删除了关闭和封装使用不当的不相关示例。
答案 0 :(得分:2)
您的怀疑是正确的,因为在可能的情况下组织代码通常是个好主意。
集中初始化函数使其他开发人员更容易确定在任何给定时间执行哪些语句。这有利于调试,并且当多个开发人员处理相同的代码时变得越来越重要。
也许考虑做这样的事情:
$(document).ready(function () {
function findLionelRichie() {
console.log('found Lionel Richie');
}
function findWhomeverElseNeedsFinding() {
console.log('found all the others');
}
(function initialize() {
findLionelRichie();
findWhomeverElseNeedsFinding();
})();
});
话虽如此,但不能总是避免它们(例如,从外部库调用函数时)。但是,尽量保持尽可能有条理。
答案 1 :(得分:0)
在另一个函数中创建函数会改变函数的范围,就像更改变量范围一样。
在函数外部定义的函数将无法在函数外部访问,除非它们已附加到函数外部可访问的对象: