必须了解的姿势点:
event loop它的执行顺序:
- 一开始整个脚本作为一个宏任务执行
- 执行过程中同步代码直接执行,宏任务进入宏任务队列,微任务进入微任务队列
- 当前宏任务执行完出队,检查微任务列表,有则依次执行,直到全部执行完
- 执行浏览器UI线程的渲染工作
- 检查是否有Web Worker任务,有则执行
- 执行完本轮的宏任务,回到2,依此循环,直到宏任务和微任务队列都为空
1.1例子:
const promise1 = new Promise((resolve,reject) => {
console.log('哈哈哈哈');
})
console.log('1',promise1);
输出结果: '哈哈哈哈' '1' Promise{}