在匿名函数中包装事件 - Javascript

时间:2015-09-25 17:36:22

标签: javascript jquery

我一直在阅读匿名的javascript函数,并且有一个关于通过jquery将它们与事件监听器一起使用的一般性问题。

我有以下事件监听器,它会在提交表单时做一些事情。

if(sky === 'blue') {
    $('#my-form').on('submit', function(){
        //do some stuff
        $('#my-div').show();
    })
}

如果我在我的javascript文件中声明它原样,或者我应该将它包装在一个像这样的匿名函数中,它会有什么不同(即,优点和缺点,可能出错的事情等)

 $(function() {
    if(sky === 'blue') {
    //do my stuff
 }

感谢任何意见,谢谢!

1 个答案:

答案 0 :(得分:2)

如果您没有声明任何变量或函数,请确保您的代码在dom准备就绪后执行,它没有任何区别。

但是共同的经验是,也许你确定这些前提现在是真的,但总有一天会有人破坏其中一个,那么你可能会遇到问题(泄密,冲突,无论)。

作为建议,我会告诉你将你的代码包装成一个立即调用的函数表达式(IIFE)。