肯定不行,因为(function(){})(); 这个总体是一个函数,去掉以后就不是了!当然出错

解决方案 »

  1.   

    刚开始以为这写法特别.其实不是,(function() {alert( "看这")})()试下;
    (function() {alert( "看这")})这里最外层的是定义这函数,而紧跟着最后面的()是执行.
    for(var i=0;i <N;i++)(function(){})(); 这里省略了{}可以不写,不过有时候就会产生歧义.
    for(var i=0;i <N;i++){(function(){})();} 这是一样的
      

  2.   

    (function(){
    })();
    这是一种很常见的写法。就是定义一个匿名的函数然后立即执行。
    这样写的函数一般用来作为内部函数来使用。因为没有太多通用性所以
    没有必要写成显示声明的函数(比如 function **(){})