我们普通函数是需要调用才可以执行的,像这样:
function getTest(){
console.log('hello')
}
get getTest()
但是立即执行函数无需调用函数,可以自己执行:
(function(){})();
(function(){}());
这是立即执行函数的俩种写法
tips:立即执行函数结束必须加封号;
(function getTest(x,y){
console.log(x + y)
}(5,6));
![]()
它最大的作用就是独立的创建了一个作用域,里面所有的变量都是局部变量,不会有命名冲突的问题
(function getTest(){
//局部变量num
var num = 10
console.log('hello')
}());
console.log(num)
不过说起命名冲突,ES6语法声明变量我们都会去使用let和const了,很好的解决了命名冲突的问题,详细介绍查看:
本文介绍了JavaScript中的立即执行函数(IIFE),强调了其无需调用即可自动执行的特点,以及如何创建独立的作用域避免命名冲突。尽管ES6的let和const已经能有效解决变量冲突问题,但IIFE在某些场景下仍然有其独特价值。通过示例展示了IIFE的两种写法及其使用。
1127

被折叠的 条评论
为什么被折叠?



