逐行读取完成后执行Node.js

这可能会发生在其他asynchronous函数,但我使用readline作为例子,因为这是我遇到的问题。

我刚刚开始使用JS,目前正试图通过stdin( < )从文件中收集input。 下面的代码就是一个例子:

 const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, terminal: false }); rl.on('line', foo); function foo(line) { // Code to be iterated by line } function summary() { // Code to be executed after rl finishes } 

所以问题是,我在哪里把summaryfunction? rl.on是否在完成后执行另一个执行的callback?

澄清:每当rl读取一行并调用summary时, foo被调用一次,这是在rl完成之后

您可能正在寻找密切的事件 :

 rl.on('close', summary);