Tôi tự hỏi làm thế nào vòng lặp sự kiện hoạt động trong javascript, Tôi đang sử dụng node.js nhưng tôi đoán rằng cùng một câu hỏi áp dụng cho các trình duyệt.javascript event-loop question
Tôi có một số cuộc gọi async (giả sử setTimeout
hoặc $.ajax
hoặc fs.readFile
) và sau một thời gian sự kiện vòng lặp thực thi callback
bây giờ khi các callback
đang nhận được thực hiện, những gì xảy ra đằng sau những cảnh? Liệu nó có làm sống lại ngăn xếp mà nó sử dụng khi nó gọi các công cụ không đồng bộ không?
Thực tế ngữ cảnh/điều này gọi lại là gì? và cách hoạt động?
chỉnh sửa: cảm ơn, tôi thấy .. chỉ là một vấn đề nữa, vòng lặp sự kiện "ghi nhớ" phạm vi của cuộc gọi lại như thế nào?
Không. JavaScript không hồi sinh ngăn xếp. Đọc về cách đóng cửa hoạt động. – Nican
Điều này có thể được sử dụng: (http://stackoverflow.com/questions/183214/javascript-callback-scope). Và đối với một hàm jQuery có liên quan: (http://api.jquery.com/jQuery.proxy/) –