我一直在阅读匿名的javascript函数,并且有一个关于通过jquery将它们与事件监听器一起使用的一般性问题。
我有以下事件监听器,它会在提交表单时做一些事情。
if(sky === 'blue') {
$('#my-form').on('submit', function(){
//do some stuff
$('#my-div').show();
})
}
如果我在我的javascript文件中声明它原样,或者我应该将它包装在一个像这样的匿名函数中,它会有什么不同(即,优点和缺点,可能出错的事情等)
$(function() {
if(sky === 'blue') {
//do my stuff
}
感谢任何意见,谢谢!
答案 0 :(得分:2)
如果您没有声明任何变量或函数和,请确保您的代码在dom准备就绪后执行,它没有任何区别。
但是共同的经验是,也许你确定这些前提现在是真的,但总有一天会有人破坏其中一个,那么你可能会遇到问题(泄密,冲突,无论)。
作为建议,我会告诉你将你的代码包装成一个立即调用的函数表达式(IIFE)。