javascript - 这三种形式的自调用匿名函数有什么区别?

标签 javascript function self-invoking-function

<分区>

Possible Duplicate:
Are “(function ( ) { } ) ( )” and “(function ( ) { } ( ) )” functionally equal in JavaScript?

我正在阅读下面的文档。

http://addyosmani.com/resources/essentialjsdesignpatterns/book/#patternity

当我查看这些示例时,匿名函数的自调用具有三种形式。

一个是

(function() {
    //do something
})();

还有一个是

function() {
    //do something
}();

另一个是

(function() {
    //do something
}());

这三种形式有什么区别?

感谢您的阅读!

最佳答案

第一个和最后一个实际上是相同的。差异是风格问题。

第二个是不安全的,因为(取决于它所在的位置)它可能是函数声明而不是函数表达式,并且您不能立即调用函数声明。

关于javascript - 这三种形式的自调用匿名函数有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14294669/

相关文章:

javascript - Popover 不显示图像?

javascript - 如何提高 JavaScript 编程创造力

php - Symfony2 可重用的代码片段函数

javascript - 如何将选择选项中的数据添加到最后选择的文本区域?

function - 如何自引用一个函数?

c - 将汇编语言与 c 链接起来

Javascript:如何命名 IIFE

javascript - 自调用函数 javascript 来清理全局命名空间上的变量

javascript - 按升序对周数和年份进行排序