Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Thuộc tính writable.writableObjectMode trong Node.js


Thuộc tính writable.writableObjectMode được sử dụng để lấy giá trị objectMode của một luồng ghi (writable Stream) cho trước. Thuộc tính này trả về true nếu chế độ đối tượng (object mode) được bật, ngược lại trả về false.

Cú pháp

writable.writableObjectMode

Ví dụ 1: Kiểm tra objectMode được bật

Tạo file tên writableObjectMode.js và sao chép mã sau. Chạy bằng lệnh:

node writableObjectMode.js

writableObjectMode.js

// Chương trình minh họa writable.writableObjectMode
const stream = require('stream');

// Tạo luồng ghi với objectMode: true
const writable = new stream.Writable({
  objectMode: true,
  write: function(chunk, encoding, next) {
    console.log(chunk.toString());
    next();
  }
});

// Ghi dữ liệu
writable.write('Welcome to TutorialsPoint!');
writable.write('SIMPLY LEARNING ');

// Kiểm tra writableObjectMode
console.log(writable.writableObjectMode === true); // true

Kết quả

Welcome to TutorialsPoint!
SIMPLY LEARNING
true

Ví dụ 2: objectMode mặc định (không bật)

// Chương trình minh họa writable.writableObjectMode
const stream = require('stream');

// Tạo luồng ghi KHÔNG đặt objectMode (mặc định false)
const writable = new stream.Writable({
  write: function(chunk, encoding, next) {
    console.log(chunk.toString());
    next();
  }
});

writable.write('Welcome to TutorialsPoint!');
writable.write('SIMPLY LEARNING ');

// Kiểm tra writableObjectMode
console.log(writable.writableObjectMode); // false

Kết quả

Welcome to TutorialsPoint!
SIMPLY LEARNING
false

Lưu ý: Giá trị mặc định của writableObjectMode là false (không phải undefined như ví dụ gốc có thể gây nhầm lẫn). Khi objectMode: true được truyền vào constructor, thuộc tính này trả về true.