javascript - (function(){}()) 与(function(){})()有什么区别?
怪我咯
怪我咯 2017-04-10 15:02:26
0
3
486

我发现他们都可以执行,但不知道有什么区别?

怪我咯
怪我咯

走同样的路,发现不同的人生

reply all(3)
Peter_Zhu

在此
http://www.zhihu.com/question/20292224

Ty80

没区别。这两个都是先声明匿名函数,然后立即执行。
其实原型是这样的function(){}()。但是这样是无法执行的。因为根据ECMA262标准function开头的语句Function Definition,此时的函数不能为匿名必须有名字。所以要声明匿名函数并立即执行,只需要保证语句不适宜function开头即可。

用法如:
(function(){}())
(function(){})()
!function(){}()
+function(){}()
-function(){}()

PHPzhong

没区别哒。可以立即执行函数,并模拟块级作用域。

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template