Streams 是 Node.js 高效處理大型資料集的超能力。讓我們深入研究流和管道。
const fs = require('fs'); const readStream = fs.createReadStream('big.file'); const writeStream = fs.createWriteStream('output.file'); readStream.on('data', (chunk) => { writeStream.write(chunk); }); readStream.on('end', () => { writeStream.end(); });
管道簡化了流組合和錯誤處理。
const { pipeline } = require('stream/promises'); const fs = require('fs'); const zlib = require('zlib'); async function compressFile(input, output) { await pipeline( fs.createReadStream(input), zlib.createGzip(), fs.createWriteStream(output) ); console.log('Compression complete'); } compressFile('big.file', 'big.file.gz').catch(console.error);
const { Transform } = require('stream'); const upperCaseTransform = new Transform({ transform(chunk, encoding, callback) { this.push(chunk.toString().toUpperCase()); callback(); } }); pipeline( process.stdin, upperCaseTransform, process.stdout ).catch(console.error);
串流在大型資料集或即時資料處理方面表現出色。掌握它們以實現可擴展的 Node.js 應用程式。
乾杯?
以上是掌握 Node.js 流和管道的詳細內容。更多資訊請關注PHP中文網其他相關文章!