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

Callback hell trong Javascript là gì?

Câu trả lời

Callback hell trong JavaScript, còn được gọi là "pyramid of doom" hoặc "hadouken", là một tình huống phổ biến trong lập trình bất đồng bộ với JavaScript, nơi mà các hàm callback được lồng vào nhau sâu và rộng, dẫn đến mã nguồn khó đọc, khó bảo trì và dễ gây lỗi. Điều này thường xảy ra khi bạn có nhiều thao tác bất đồng bộ cần phải được thực hiện theo một trình tự nhất định và kết quả của mỗi thao tác phụ thuộc vào thao tác trước đó.

Ví dụ về callback hell:

javascript Copy
fs.readdir(source, function (err, files) {
  if (err) {
    console.log('Error finding files: ' + err)
  } else {
    files.forEach(function (filename, fileIndex) {
      // ... thêm nhiều lớp lồng nhau khác ...
    });
  }
});

Trong ví dụ trên, bạn có thể thấy rằng các hàm callback được lồng vào nhau nhiều lần, tạo ra một "hình kim tự tháp" của mã nguồn, và nhiều dấu }) ở cuối, làm cho mã nguồn trở nên rối rắm và khó theo dõi.

Để tránh callback hell, có...

middle

middle

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

middle

Giải thích sự khác biệt giữa function Person(){}, var person = Person(), và var person = new Person() là gì?

entry

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

senior

Giải thích về Hoisting trong Javascript?

Bình luận

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

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