可能重复:
JavaScript中的“(function(){})()”和“(function(){}())”在功能上是否相等?
这是我还没有弄清楚的事情,但是我一直在使用function(){}()只是因为如果添加括号,我的VIM语法高亮显示就搞砸了,尽管我已经看到了(function(){})()大约很多次,也许是IE的事情?
编辑:
var singleton = function() { // code }(); var singleton = (function() { // code })();
基本上,括号是一种约定,用于表示紧随其后的是立即调用的函数表达式,而不是普通函数。尤其是如果功能主体过长,可以减少意外情况,