Trung BìnhNode.js iconNode.js

Buffer trong Node.js là gì? Khi nào cần dùng?

Buffer là class built-in xử lý binary data — vùng nhớ raw bytes nằm ngoài V8 heap.

  • JavaScript thuần không có kiểu dữ liệu binary, Buffer lấp đầy khoảng trống này cho Node.js.
  • Cần dùng khi: đọc file binary (ảnh, PDF, executable), xử lý network packets TCP/UDP, mã hóa/giải mã base64 (Buffer.from('hello').toString('base64')), tính hash với crypto.createHash.

Ví dụ thực tế: upload ảnh qua API, req.body là Buffer chứa raw bytes của file, cần convert hoặc pipe trực tiếp lên S3.

Pitfall: Buffer.allocUnsafe(size) nhanh hơn nhưng chứa dữ liệu cũ trong bộ nhớ — chỉ dùng khi sẽ ghi đè toàn bộ ngay sau đó, dùng Buffer.alloc(size) (zero-filled) cho trường hợp thông thường.

Xem toàn bộ Node.js cùng filter theo level & chủ đề con.

Mở danh sách Node.js