Node.js 中的流是有效處理 I/O 操作的強大方法,尤其是在處理大量資料時。流允許我們分塊處理數據,而不是一次性讀取和寫入數據,從而提高效能並減少記憶體消耗。
Node.js 提供四種類型的流:
Stream Type | Description | Example |
---|---|---|
Readable Streams | Used for reading data | Reading from a file |
Writable Streams | Used for writing data | Writing to a file |
Duplex Streams | Both readable and writable | Sockets |
Transform Streams | A type of duplex stream where data can be modified as it is read or written | Compression |
可讀流
end
const fs = require('fs'); const readableStream = fs.createReadStream('example.txt', { encoding: 'utf8' }); readableStream.on('data', (chunk) => { console.log('Received chunk:', chunk); }); readableStream.on('end', () => { console.log('No more data.'); }); readableStream.on('error', (err) => { console.error('Error:', err); });
const fs = require('fs'); const writableStream = fs.createWriteStream('output.txt'); writableStream.write('Hello, Node.js streams!\n'); writableStream.end(); // Close the stream writableStream.on('finish', () => { console.log('Finished writing.'); }); writableStream.on('error', (err) => { console.error('Error:', err); });
readableStream.pipe(writableStream);
流有助於有效地處理大量資料。例如,在處理文件時,流可以讓您避免將整個文件載入到記憶體中。這在處理媒體檔案、大數據集或來自 HTTP 請求的資料時特別有用。
最後的提示
以上是Node.js 中的流 - 教程 - 第 7 部分的詳細內容。更多資訊請關注PHP中文網其他相關文章!