JavaScript之立即执行函数
1.含义:立即执行函数就是不需要调用,就可以直接执行
//普通函数
function fn(){};//声明定义函数
fn();//调用
//立即执行函数
(function fn(){}());//立即执行
2.写法
(1)、(function(){}());//其中function(){}声明了之后就直接被里面的括号调用了,里面的“()”就可以理解为调用的意思。
(2)、(function(){})();// 其中function(){}声明了之后就直接被外面的括号调用了,外面的“()”就可以理解为调用的意思。
*Note:*“()”可以直接传参
(function(a,b){
consloe.log(a+b)
}(2,3));
//最后输出的结果是5
再比如
(function(a,b){
consloe.log(a+b)
}(2,3));
(function(a,b){
consloe.log(a+b)
}(2,3));
//如果有两个立即函数,每一个函数必须以";"结尾,否则会引起报错
3.作用
立即函数会形成一个单独的作用域,在里面的变量都是局部变量,不会出现变量命名冲突的情况,例如
(function(){
var num;
}());
(function(){
var num;
}());
//不会出现报错的情况,因为当每一个立即函数被执行后,里面的变量都会被回收销毁,因此就不会出现变量命名冲突的情况了。