可能重复:
Are “(function ( ) { } ) ( )” and “(function ( ) { } ( ) )” functionally equal in JavaScript?
我正在阅读下面的文件。
http://addyosmani.com/resources/essentialjsdesignpatterns/book/#patternity
当我查看这些示例时,自动调用匿名函数有三种形式。
一个是
(function() {
//do something
})();
而另一个是
function() {
//do something
}();
而另一个是
(function() {
//do something
}());
这三种形式之间有什么区别?
感谢您的阅读!
答案 0 :(得分:6)
第一个和最后一个实际上完全相同。差异是风格问题。
第二个是不安全的(取决于它在哪里)它可能是一个函数声明而不是一个函数表达式,你不能立即调用一个函数声明。
答案 1 :(得分:1)
诉讼功能无效语法:
function() {
//do something
}();