Kết quả đoạn code sau là gì? Hãy giải thích tại sao?
Kết quả đoạn code sau là gì? Hãy giải thích tại sao?
for (var i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 1);
}
for (let i = 0; i < 3; i++) {
setTimeout(() => console.log(i), 1);
}
0 1 2
and 0 1 2
0 1 2
and 3 3 3
3 3 3
and 0 1 2
Bởi vì event queue trong JavaScript, hàm setTimeout
callback sẽ được gọi sau khi vòng lặp được thực hiện. Bời vì biến i
trong vòng lặp đầu tiên được khai báo với từ khóa var
, nên nó sẽ là...
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào