没有区别 两种方法都是使Javascript解析器将函数视为 表达式 而不是 声明的 有效方法。
请注意,
+和
!也可以使用,并且有时被缩小器用来保存大小字符:
+function() { var foo = 'bar'; }();!function() { var foo = 'bar'; }();编辑
正如@copy指出的那样,出于完整性考虑,它
~也
-将起作用。
-function() { var foo = 'bar'; }();~function() { var foo = 'bar'; }();

![(…())与(…)()在javascript闭包中[重复] (…())与(…)()在javascript闭包中[重复]](http://www.mshxw.com/aiimages/31/575152.png)
