侧边栏壁纸
博主头像
云之彼端博主等级

行动起来,活在当下

  • 累计撰写 27 篇文章
  • 累计创建 6 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录

Js立即执行函数的使用场景

Administrator
2019-06-16 / 0 评论 / 2 点赞 / 52 阅读 / 976 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2023-12-26,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
Js立即执行函数的使用场景

立即执行函数的使用

(function(){

}
)();

立即执行函数在定义完后即执行,执行完之后就销毁自身,因此在立即执行函数中声明的变量不会污染全局变量。

使用场景

for(var i=1;i<10;i++){
 setTimeout(
 function(){
    console.log(i);
 },100)
}

按正常逻辑来说控制台应该会打印1到9九个数字,但是由于setTimeout是异步方法,只会在同步进程完成后再执行,因此输出的结果为9个10。

for(var i=1;i<10;i++){
 (function(){
  setTimeout(
  function(){
     console.log(i);
  },100)
 })();
}

使用立即执行函数包含异步方法,使得每一次循环后都会执行一次延时方法,这时控制台就会正常打印10个数字。

2

评论区