0

我正在阅读一个大.csv文件fast-csv

我的文件.js

var count = 0;
var stream = fs.createReadStream("name of file");
fcsv(stream)
  .on('data', function(data) {
    ModelName.find(query, function(err, docs) {
      console.log('docs', docs);
      count = count++;
    });
  })
  .on('end', function() {
    console.log('done', count);
  })
  .parse();

脚本运行并docs打印出列表并on('end')触发。

如何获得count打印出数量的值docs?目前它打印出来0

有什么建议么?

4

1 回答 1

0

您将两种不同的增量样式与count变量混合在一起。让我们看这个小例子来突出它:

var counter = 0
for (var i = 0; i < 10; i++) {
    counter = counter++ //<-- the bug is right here
};
console.log(counter) // prints 0

发生的事情是counter++右侧是后增量的。这意味着counter++计算为counter(意思是 0)的原始值并递增counter1。之后,原始值被分配给 left-side counter

你想写的是以下任何一个:

  • counter = ++counter
  • counter = counter + 1
  • counter++
  • counter += 1
于 2013-11-19T23:04:32.033 回答