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
- Call stack (code đồng bộ)
- Microtask queue:
Promise.then,queueMicrotask - Macrotask queue:
setTimeout,setInterval, I/O, sự kiện UI
Ví dụ: đoán output
main.js · sửa được