首页 > 代码库 > 【JavaScript】浅析IIFE的作用

【JavaScript】浅析IIFE的作用

什么是IIFE

IIFE就是立即执行函数表达式(Immediately-Invoked Function Expression)

为什么需要IIFE

应用IIFE有两个比较经典的使用场景,

第一就是在循环中定时输出数据项,

for(var i=0;i<5;i++){setTimeout(function(){console.log(i);},1000);}

上面输出的并不是0,1,2,3,4而是5,5,5,5,5

for(var i=0;i<5;i++){(function(i){setTimeout(function(){console.log(i);},1000);})(i)}

这输出的才是0,1,2,3,4

第二是类似于jQuery/Node的插件和模块开发

(function($){//代码})(jQuery)

【JavaScript】浅析IIFE的作用