From 54dcaa69a175550722c16858428d5554cf084786 Mon Sep 17 00:00:00 2001 From: Sunny Date: Tue, 23 Jul 2024 22:59:24 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E4=BA=8B=E4=BB=B6=E5=BE=AA=E7=8E=AF?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/javascript/event-loop.md | 12 ++++-------- public/javascript_eventloop.png | Bin 50503 -> 0 bytes 2 files changed, 4 insertions(+), 8 deletions(-) delete mode 100644 public/javascript_eventloop.png diff --git a/docs/javascript/event-loop.md b/docs/javascript/event-loop.md index 43b0cbf..0e73565 100644 --- a/docs/javascript/event-loop.md +++ b/docs/javascript/event-loop.md @@ -180,10 +180,6 @@ console.log('2'); 4. JS 引擎线程只会执行执行栈中的事件,执行栈中的代码执行完毕,就会读取事件队列中的事件并添加到执行栈中继续执行; 5. 反复执行,就是我们所谓的事件循环(Event Loop); -
- -
- ## 宏任务与微任务 ### 宏任务 @@ -197,8 +193,8 @@ console.log('2'); 1. 主代码块; 2. setTimeout; 3. setInterval; -4. setImmediate () - Node; -5. requestAnimationFrame () - 浏览器 +4. setImmediate - Node; +5. requestAnimationFrame - 浏览器 ### 微任务 @@ -210,8 +206,8 @@ ES6 新引入了 Promise 标准,同时浏览器实现上多了一个 microtask 常见的微任务: -1. process.nextTick () -Node; -2. Promise.then(); +1. process.nextTick - Node; +2. Promise.then; 3. catch;finally; 4. Object.observe; 5. MutationObserver; diff --git a/public/javascript_eventloop.png b/public/javascript_eventloop.png deleted file mode 100644 index f89fbcc3506c69d5a21c654b77aa20b9309a1cc3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50503 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