一、JS立即执行函数的写法
方式1、最前最后加括号
(function(){alert(1);}());
方式2、function外面加括号
(function(){alert(1);})();
方式3、function前面加运算符,常见的是!与void
!function(){alert(1);}();
voidfunction(){alert(2);}();
二、立即执行函数的参数
可以给立即执行函数传递参数,例如
(function(who, when){
console.log("I met " + who + " on " + when);
} ("Joe Black", new Date()));
记住:
1、立即函数内部是可以访问外部变量的,所以很多情况下,我们并不需要传参数。如:jQuery的window实参,如果不传入。内部也是可以直接使用的。
2、通常你不应该给立即执行函数传递太多的函数,因为它很快会成为一个负担——为了理解代码是如何工作的,你不得不经常上下滚动源代码。
三、立即执行函数的返回值
像其它任何函数一样,一个立即执行函数也能返回值并且可以复制给其它变量,例如
var result = (function (){
return 2 + 2;
}());
参考资料: js立即执行函数 http://www.studyofnet.com/news/1026.html