Câu hỏi phỏng vấn Javascript
Câu hỏi

Kết quả đoạn code sau là gì? Hãy giải thích tại sao?

Câu trả lời
  for (var i = 0; i < 3; i++) {
    setTimeout(() => console.log(i), 1);
  }

  for (let i = 0; i < 3; i++) {
    setTimeout(() => console.log(i), 1);
  }
  • A: 0 1 2 and 0 1 2
  • B: 0 1 2 and 3 3 3
  • C: 3 3 3 and 0 1 2

Đáp án: C

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

middle

Gợi ý câu hỏi phỏng vấn

middle

Bạn biết những cách nào để lặp qua các thuộc tính đối tượng trong Javascript?

middle

Kết quả đoạn code sau là gì? Hãy giải thích tại sao?

entry

Sự khác biệt của biến dùng var, letconst trong javascript là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào