</>
⌕
Mid #async#promise

Event loop hoạt động thế nào? Microtask vs macrotask?

⚡ Trả lời nhanh

JS đơn luồng; event loop chạy hết code đồng bộ, rồi xử lý toàn bộ microtask (Promise.then) trước, sau đó mới lấy 1 macrotask (setTimeout, I/O) tiếp theo.

Thứ tự ưu tiên

  1. Call stack (code đồng bộ)
  2. Microtask queue: Promise.then, queueMicrotask
  3. Macrotask queue: setTimeout, setInterval, I/O, sự kiện UI

Ví dụ: đoán output

main.js · sửa được
🃏 Ôn bằng flashcard