news 2026/4/28 12:48:01

宏任务和微任务

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
宏任务和微任务
// 理解事件循环的执行顺序 console.log('1. 同步任务开始'); setTimeout(() => { console.log('6. 宏任务执行'); }, 0); Promise.resolve().then(() => { console.log('4. 微任务执行'); }); console.log('2. 同步任务继续'); Promise.resolve().then(() => { console.log('5. 另一个微任务'); }); console.log('3. 同步任务结束'); // 输出顺序:1 2 3 4 5 6

代码执行步骤

  1. 同步任务执行
    • console.log('1. 同步任务开始');:这是一个同步任务,会立即执行并输出1.同步任务开始
    • console.log('2. 同步任务继续');:同样是同步任务,继续执行并输出2. 同步任务继续
    • console.log('3. 同步任务结束');:同步任务结束,输出3. 同步任务结束
  1. 异步任务处理
    • setTimeout(() => { console.log('6. 宏任务执行'); }, 0);setTimeout是一个宏任务,虽然设置的延迟时间为 0 毫秒,但它不会立即执行,会被放入宏任务队列,等当前调用栈清空后才会执行。
    • Promise.resolve().then(() => { console.log('4. 微任务执行'); });Promise.resolve().then(() => { console.log('5. 另一个微任务'); });Promisethen方法是微任务,会被放入微任务队列。当同步任务执行完后,会优先执行微任务队列中的所有任务。
  1. 最终执行顺序
    • 先执行所有同步任务,依次输出1. 同步任务开始2. 同步任务继续3. 同步任务结束
    • 接着执行微任务队列中的任务,依次输出4. 微任务执行5. 另一个微任务
    • 最后执行宏任务队列中的任务,输出6. 宏任务执行
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 2:58:36

5分钟搞定Android开机启动脚本,测试OK实操指南

5分钟搞定Android开机启动脚本,测试OK实操指南 在嵌入式开发或系统定制过程中,我们常常需要让某些任务在Android设备开机时自动执行。比如自检、配置网络、启动守护进程等。实现这一功能最直接的方式就是编写一个开机启动Shell脚本。 本文将带你从零开…

作者头像 李华
网站建设 2026/4/28 2:59:01

亲测HeyGem数字人系统,音频驱动口型同步效果惊艳

亲测HeyGem数字人系统,音频驱动口型同步效果惊艳 最近在尝试搭建一个自动化数字人视频生成流程时,接触到了一款名为 HeyGem 数字人视频生成系统批量版webui版 的镜像工具。经过几天的深度使用和多个场景测试,我必须说:它的音频驱…

作者头像 李华
网站建设 2026/4/28 8:07:17

3步快速上手Kronos:AI金融市场预测实战指南

3步快速上手Kronos:AI金融市场预测实战指南 【免费下载链接】Kronos Kronos: A Foundation Model for the Language of Financial Markets 项目地址: https://gitcode.com/GitHub_Trending/kronos14/Kronos Kronos是一个基于Transformer架构的金融市场预测基…

作者头像 李华
网站建设 2026/4/25 20:59:05

老旧Mac设备升级macOS系统全流程实战指南

老旧Mac设备升级macOS系统全流程实战指南 【免费下载链接】OpenCore-Legacy-Patcher 体验与之前一样的macOS 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为2012-2015年款的Mac设备无法升级到最新macOS系统而烦恼?…

作者头像 李华
网站建设 2026/4/25 21:00:22

揭秘高性能3D抽奖系统:从技术原理到企业级应用实践

揭秘高性能3D抽奖系统:从技术原理到企业级应用实践 【免费下载链接】log-lottery 🎈🎈🎈🎈年会抽奖程序,threejsvue3 3D球体动态抽奖应用。 项目地址: https://gitcode.com/gh_mirrors/lo/log-lottery …

作者头像 李华
网站建设 2026/4/25 20:58:14

万物识别-中文-通用领域环境部署教程:PyTorch 2.5一键配置方案

万物识别-中文-通用领域环境部署教程:PyTorch 2.5一键配置方案 你是否还在为复杂的AI模型部署流程头疼?尤其是面对图像识别这类依赖众多库和特定版本的项目时,光是环境配置就能耗掉大半天。今天要介绍的这个“万物识别-中文-通用领域”模型&…

作者头像 李华