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

时间:2017-08-02 18:13:19

标签: javascript node.js asynchronous readline

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

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

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
}

所以问题是,我在哪里放summary函数? rl.on是否会在完成后执行另一个回调?

澄清:<{strong> foo每当rl读取一行时调用summaryrl只调用一次,这是在#include <stdio.h> int main(void) { int i, a, temp, sec; while (1) { scanf("%d", &a); if (a == -1) ; break; temp = a; while (1) { scanf("%d", &a); if (a == -1) { break; } if (a > temp) sec = temp; else sec = a; } } printf("%d", sec); return 0; } 完成之后

1 个答案:

答案 0 :(得分:3)

您可能正在寻找close event

rl.on('close', summary);