JS中异步操作执行顺序如何解析?

更新于
2026-09-23 14:43:26
0阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1407个文字,预计阅读时间需要6分钟。

JS中异步操作执行顺序如何解析?

1. 1.js执行顺序,先同步后异步

2.异步中任务队列的执行顺序:先微任务microtask队列,再宏任务macrotask队列

JS中异步操作执行顺序如何解析?

3.调用Promise中的resolve、reject属于微任务队列,setTimeout属于宏任务队列

注意:

  • 1.js的执行顺序,先同步后异步
  • 2.异步中任务队列的执行顺序: 先微任务microtask队列,再宏任务macrotask队列
  • 3.调用Promise 中的resolve,reject属于微任务队列,setTimeout属于宏任务队列

注意以上都是 队列,先进先出。

微任务包括 `process.nextTick` ,`promise` ,`MutationObserver`。

宏任务包括 `script` , `setTimeout` ,`setInterval` ,`setImmediate` ,`I/O` ,`UI rendering`。

在node环境下,process.nextTick的优先级高于Promise,也就是可以简单理解为:在宏任务结束后会先执行微任务队列中的nextTickQueue部分,然后才会执行微任务中的Promise部分。

阅读全文

本文共计1407个文字,预计阅读时间需要6分钟。

JS中异步操作执行顺序如何解析?

1. 1.js执行顺序,先同步后异步

2.异步中任务队列的执行顺序:先微任务microtask队列,再宏任务macrotask队列

JS中异步操作执行顺序如何解析?

3.调用Promise中的resolve、reject属于微任务队列,setTimeout属于宏任务队列

注意:

  • 1.js的执行顺序,先同步后异步
  • 2.异步中任务队列的执行顺序: 先微任务microtask队列,再宏任务macrotask队列
  • 3.调用Promise 中的resolve,reject属于微任务队列,setTimeout属于宏任务队列

注意以上都是 队列,先进先出。

微任务包括 `process.nextTick` ,`promise` ,`MutationObserver`。

宏任务包括 `script` , `setTimeout` ,`setInterval` ,`setImmediate` ,`I/O` ,`UI rendering`。

在node环境下,process.nextTick的优先级高于Promise,也就是可以简单理解为:在宏任务结束后会先执行微任务队列中的nextTickQueue部分,然后才会执行微任务中的Promise部分。

阅读全文