Node.js は、Chrome JavaScript ランタイム上に構築されたプラットフォームです。

Node.js は、Google の V8 エンジンをベースにしたイベント駆動型 I/O サーバーサイド JavaScript 環境であり、V8 エンジンは JavaScript を非常に高速に実行し、非常に優れたパフォーマンスを発揮します。

Node.jsストリーム(ストリーム) 構文

Stream は抽象インターフェイスであり、Node 内の多くのオブジェクトがこのインターフェイスを実装しています。たとえば、http サーバーへのリクエストを開始するリクエスト オブジェクトは、ストリームと stdout (標準出力) です。

Node.js、ストリームには 4 つのストリーム タイプがあります。

Readable - 読み取り可能な操作。

書き込み可能 - 書き込み可能な操作。

Duplex - 読み取りおよび書き込み操作

Transform - この操作はデータを書き込み、結果を読み取ります。

すべての Stream オブジェクトは EventEmitter のインスタンスです。一般的に使用されるイベントは次のとおりです。

data - データが読み取り可能になったときにトリガーされます。

end - 読み取るデータがなくなったときに発生します。

error - 受信および書き込み中にエラーが発生したときにトリガーされます。

finish - すべてのデータが基礎となるシステムに書き込まれたときにトリガーされます。

Node.jsストリーム(ストリーム) 例

次のコードを使用して main.js ファイルを作成します:

var fs = require("fs");var data = '';
// 创建可读流
var readerStream = fs.createReadStream('input.txt');
// 设置编码为 utf8。
readerStream.setEncoding('UTF8');
// 处理流事件 --> data, end, and error
readerStream.on('data', function(chunk) {   data += chunk;});
readerStream.on('end',function(){   console.log(data);});
readerStream.on('error', function(err){   console.log(err.stack);});
console.log("程序执行完毕");