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

Kết quả của vòng lặp sau là gì? Hãy giải thích tại sao?

Câu trả lời

javascript Copy
  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

entry

Javascript có các kiểu dữ liệu nào? Bạn biết gì về chúng

senior

Khi nào bạn sẽ sử dụng import * as X from 'X'?

junior

Kết quả đoạn code javascript sau là true hay false? Hãy giải thích tại sao?

Bình luận

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

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