Câu hỏi phỏng vấn Node.js
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:

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ó...

Bạn cần đăng nhập để xem
middle

middle

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

expert

Tại sao các nhà phát triển Node.js thường có xu hướng sử dụng Module Requiring thay vì Dependency Injection?

middle

Stream Chaining trong Node.js là gì?

middle

Chúng ta có thể chạy một external process với Node.js không?

Bình luận

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

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