我希望在事件触发后调用一个函数,然后在同一回调中再次调用该函数。这是为了创建一个类似于事件监听器的效果,当函数完成时。
当您看到代码时,您将知道我想要做什么:
"use strict";
var page = require('webpage').create();
var system = require('system');
function onStdReadLine(callback) {
system.stdin.readLineAsync(function(err, line) {
callback(line);
onStdReadLine(callback);
});
}
onStdReadLine(function(line) {
// do something when the line comes in
system.stdout.writeLine(line);
});
问题:
这段代码会不会产生栈溢出?有没有一种方法可以重构这段代码,使其不再递归?
谢谢!