Node.js Stream Complete Reference
Node.js streams are a type of data-handling method and are used to read or write input into output sequentially. Streams are used to handle reading/writing files or exchanging information efficiently.
Example:
Javascript
const stream = require( 'stream' );
const writable = new stream.Writable({
write: function (chunk, encoding, next) {
console.log(chunk.toString());
next();
}
});
writable.write( "GfG" , "utf8" , () => {
console.log( "CS-Portal!" );
});
|
Output:
GfG
true
CS-Portal!
The Complete List of Streams are listed below:
Writable Streams
Writable Streams Methods
|
Descriprion |
cork() |
Write every data into the buffer memory. |
destroy() |
Destroy the created stream and you cannot call the write() method |
end() |
It is an inbuilt application programming interface of Stream module |
setDefaultEncoding() |
Set the default encoding for a Writable stream. |
uncork() |
Flush all the buffered data when stream.cork() method was called. |
_write() |
It is affixed with an underscore as it is inside the class that defines it. |
write() |
Write some data to the Writable stream. |
read() |
Read the data out of the internal buffer. |
destroy() |
Destroy the stream. |
pause() |
Stop the flowing mode from emitting ‘data’ events. |
isPaused() |
Check the current operating state of the Readable streams. |
resume() |
Paused data that can be resumed again and data starts flowing again. |
Writable Streams Property
|
Description |
Length |
check the number of bytes in the queue that is ready to be written. |
ObjectMode |
Get the object mode value of the Writable stream. |
Finished |
The writable.writableFinished property is set to true instantly before the emit of the ‘finish’ event. |
Corked |
Check the number of times you need to call the uncork() function so that you can fully uncork the stream. |
destroyed |
Check the writable.destroy() method is being called or not. |
writable |
Check the writable.write() method is safe to call or not. |
writableEnded |
Check the writable.end() method is being called or not. |
HighWaterMark |
Check the highWaterMark value which was passed while creating the Writable. |
destroyed |
Check the readable.destroy() function is being called or not. |
Writable Streams Event
|
Description
|
close |
Its hidden resources (for example, a file descriptor) is being closed. |
finish |
The ‘finish’ event in a Writable Stream is emitted after the Calling of writable.end() method |
Stream pipe |
When the stream.pipe() method is being called on a readable stream |
unpipe |
When stream.unpipe() method is being called on a Readable stream |
Readable Streams
Readable Streams Methods
|
Description
|
pipe() |
Attach a Writable stream to the readable stream so that it consequently |
unpipe() |
Detach a Writable stream which was previously attached while using the stream.pipe() method. |
unshift() |
Readable Stream is utilized to push a chunk of data back into the internal buffer. |
Readable.from() |
construct Readable Streams out of iterators. |
setEncoding() |
Set the encoding of the data read. |
Readable Streams Property
|
Description
|
readableLength |
Check the number of bytes in the queue which is ready to be read. |
readableHighWaterMark |
Check the value of highWaterMark used while constructing Readable streams. |
readableFlowing |
Check if the streams are in flowing mode or not. |
readableEnded |
Check if the end event is emitted or not. |
readableObjectMode |
Check the objectMode of the stream |
readable |
Check if it is safe to call readable.read() method. |
Readable Streams Events |
Description
|
pause |
When stream.pause() is being called and readableFlowing property is not false. |
resume |
When stream.resume() is being called and readableFlowing property is not true. |
error |
The ‘error’ event in Readable stream can be emitted at any time. |
readable |
When the data is available so that it can be read from the stream |
data |
When readable.pipe() and readable.resume() method is called for switching the stream |
close |
When the stream and any of its hidden resources are being closed |
end |
When there is no available data to be consumed from the readable stream. |
Transform Streams
Transform Streams Methods |
Description
|
destroy() |
Destroy the transform stream, and also emits an ‘error’ event optionally. |
pipeline() |
That is used to the pipe by linking. |
finished() |
It is utilized to receive an alert if a stream is not writable or readable anymore. |
Last Updated :
27 Feb, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...