【前端学习——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.执行完同步代码后去微任务队列执行微任务,然后宏任务

相关推荐
wrj的博客1 小时前
python环境安装
python·学习·环境配置
优雅的潮叭1 小时前
c++ 学习笔记之 chrono库
c++·笔记·学习
星火开发设计1 小时前
C++ 数组:一维数组的定义、遍历与常见操作
java·开发语言·数据结构·c++·学习·数组·知识
search71 小时前
前端设计:CRG 3--CDC error
前端
治金的blog2 小时前
vben-admin和vite,ant-design-vue的结合的联系
前端·vscode
星幻元宇VR2 小时前
走进公共安全教育展厅|了解安全防范知识
学习·安全·虚拟现实
知识分享小能手2 小时前
Oracle 19c入门学习教程,从入门到精通, Oracle 表空间与数据文件管理详解(9)
数据库·学习·oracle
利刃大大3 小时前
【Vue】Vue2 和 Vue3 的区别
前端·javascript·vue.js
Lhuu(重开版3 小时前
JS:正则表达式和作用域
开发语言·javascript·正则表达式
浅念-3 小时前
C语言小知识——指针(3)
c语言·开发语言·c++·经验分享·笔记·学习·算法