function(){alert(1);}();
以上写法是错的,原因是前半段“function(){alert(1);}”被当成了函数声明,而不是一个函数表达式,从而让后面的“();”变得孤立,产生语法错误
结论:函数体必须是函数表达式
1)最前最后加括号:(函数(实参))—好处:提醒阅读代码的人,这段代码是一个整体
(function(){alert(1);}());
2)function外面加括号:(函数)(实参) ----比方法1少了一个代码整体性的好处
(function(){alert(1);})();