js函数的声明和表达式的执行
var foo = function(){ /* code */ };//函数的表达式 function(){ /* code */ } //函数的声明
函数的表达式可以直接在后面加个括号var foo = function(){ /* code */ }();调用,但是函数的声明不行,会报错出来
!function () { /* code */ } ();
new function () { /* code */ }
new function () { /* code */ } () // 如果需要传递参数,只需要加上括弧()
为什么这样可以调用,因为
由于括弧()和JS的&&,异或,逗号等操作符是在函数表达式和函数声明上消除歧义的

浙公网安备 33010602011771号