我正在尝试使用nodejs中的内置readline
模块,无法理解这个简单程序中发生了什么
'use strict';
const fs = require('fs');
const readline = require('readline');
let count = 0;
let max = 10;
const lineReader = readline.createInterface({
input: fs.createReadStream('verybigfile.txt')
});
lineReader.on('line', function(line) {
count++;
if (count > max) {
lineReader.close();;
}
console.log(count);
});
上面的代码打印出1 .. 138,然后停止。实际上,对于max
的任何值,它一直计数到138,直到137。对于max
,从138到275,它输出1 ..276。对于276到415,它输出1 .. 416,等等。不用说,我希望它可以打印到max
,然后由于rl.close()
这是怎么回事?