面试题答案
一键面试代码示例
const fs = require('fs');
const readableStream = fs.createReadStream('largeFile.txt');
readableStream.on('data', (chunk) => {
console.log('Received a chunk of data:', chunk.length, 'bytes');
});
readableStream.on('end', () => {
console.log('All data has been read.');
});
性能优势
- 内存占用低:普通读取方式会一次性将整个大文件读入内存,如果文件过大,可能会导致内存溢出。而流的方式是逐块读取数据,每次处理一小部分数据,大大降低了内存的占用。
- 处理速度快:在流读取数据的同时就可以对数据进行处理,不必等待整个文件都读入内存后才开始处理,提高了整体的处理效率。特别是对于需要实时处理大量数据的场景,流的方式优势更为明显。