最近在学习JavaScript,将立即执行函数的知识分享给大家。
一、什么是立即执行函数?
立即执行函数不需要调用,立马能够自己执行的函数。
二、对比
1.普通函数的声明要调用
代码如下:
function fn() {
console.log(1);
}
fn();
声明了之后还要调用才会执行。
2.立即执行函数声明不需要调用
代码如下:
// (function(){})() 或者 (function(){}());
(function sub(a, b) {
console.log(a - b);
})(3, 4);
//第二种写法
(function sum(a, b) {
//局部变量
var x = 100;
console.log(a + b);
}(3, 4))
立即执行函数的两种写法,也可以传参可以命名,后面跟参数的括号可以看做是调用了函数。立即执行函数最大的作用就是独立创建了一个作用域,避免命名冲突问题。项目需要多个js文件的时候其它js文件的命名不会相互影响。例如上面的x局部变量其它的js文件也可以用x这个命名。里面所有的变量都是局部变量,等函数执行完后立马就释放完毕了。