【前端学习——js】宏任务,微任务

pink老师讲解视频

https://www.bilibili.com/video/BV1G84y1B7hZ/?spm_id_from=333.788\&vd_source=5cef5968d539682b683e7d01b00ad01b

宏任务(浏览器,node发起)

  • script
  • 事件
  • ajax,fetch
  • 定时器 settimeout、setinterval

微任务(js引擎发起)

  • promise
    promise本身同步,但then、catch异步

代码可分为,执行顺序为:

同步代码
微任务异步代码
  • promise.then.catch
  • async/await
宏任务异步代码
  • script
  • 定时器

流程:

1.先将同步代码放到执行栈,微任务放到微任务队列(先进先出),宏任务也有队列

2.执行完同步代码后去微任务队列执行微任务,然后宏任务

相关推荐
d111111111d7 小时前
STM32 GPIO输出模式配置详解:从寄存器层面理解引脚控制
笔记·stm32·单片机·嵌入式硬件·学习
曾浩轩7 小时前
跟着江协科技学STM32之4-1OLED调试工具
科技·stm32·单片机·学习
布列瑟农的星空12 小时前
Playwright使用体验
前端·单元测试
卤代烃13 小时前
🦾 可为与不可为:CDP 视角下的 Browser 控制边界
前端·人工智能·浏览器
_XU13 小时前
AI工具如何重塑我的开发日常
前端·人工智能·深度学习
C_心欲无痕13 小时前
vue3 - defineExpose暴露给父组件属性和方法
前端·javascript·vue.js·vue3
鹿人戛14 小时前
HarmonyOS应用开发:相机预览花屏问题解决案例
android·前端·harmonyos
萌萌哒草头将军14 小时前
绿联云 NAS 安装 AudioDock 详细教程
前端·docker·容器
贺今宵14 小时前
安装better-sqlite3报错electron-vite
javascript·sql·sqlite·sqlite3
GIS之路14 小时前
GIS 数据转换:使用 GDAL 将 GeoJSON 转换为 Shp 数据
前端