![](/img/trans.png)
[英]What is the purpose of wrapping whole Javascript files in anonymous functions like “(function(){ … })()”?
[英]Wrapping Events in Anonymous Functions - Javascript
我一直在阅读匿名 javascript 函数,并有一个关于通过 jquery 将它们与事件侦听器一起使用的一般问题。
我有以下事件侦听器,它将在提交表单时执行一些操作。
if(sky === 'blue') {
$('#my-form').on('submit', function(){
//do some stuff
$('#my-div').show();
})
}
如果我要在我的 javascript 文件中按原样声明它,或者我应该像这样将它包装在匿名函数中,它会产生任何区别吗(即,优点和缺点,可能出错的事情等)
$(function() {
if(sky === 'blue') {
//do my stuff
}
任何输入表示赞赏,谢谢!
如果你没有声明任何变量或函数,并且你确保你的代码会在 dom 准备好后执行,那没有任何区别。
但通常的经验是,也许您现在确定这些前提是正确的,但总有一天有人会破坏其中一个,那么您可能会遇到问题(泄漏,冲突,等等)。
作为建议,我会告诉您将代码包装到立即调用函数表达式 (IIFE) 中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.