「Javascript」宏任务与微任务

101 阅读1分钟

说说什么事宏任务和微任务,很多面试官也不懂,你可以拿着个来唬住他!

定义

  • 宏任务:常见的定时器,用户交互事件等(宏任务就是特定的这些个任务,没什么特殊含义)
  • 微任务:Promise 相关任务,MutationObserver 等(一样,只是一种称呼而已!!!)

真题

function app() {
  setTimeout(() => {
    console.log("1-1");
    Promise.resolve().then(() => {
      console.log("2-1");
    });
  });
  console.log("1-2");
  Promise.resolve().then(() => {
    console.log("1-3");
    setTimeout(() => {
      console.log("3-1");
    });
  });
}
app();

输出

1-2 1-3 1-1 2-1 3-1