我有一些Node.js代码,并希望让它运行浏览器。在我的 Node.js 代码中的许多地方,我已经调用了 process.stdout.write
和 process.stderr.write
。
在浏览器中,我们有控制台.log/console.error
我在这里不需要高性能。如果我像这样在浏览器中实现这些方法:
process.stdout.write = function(v){
console.log(v);
};
process.stdout.error = function(v){
console.error(v);
};
这显然不会真正得到我们想要的东西。有没有办法在浏览器中挂接到 console.log/console.error 以打印到 stdout/stderr 而不打印换行符?
这应该有效:
var stdout = '';
process.stdout.write = function(s) {
stdout += s;
for (var i; -1 !== (i = stdout.indexOf('n')); stdout = stdout.slice(i + 1))
console.log(stdout.slice(0, i));
};
同上。
但是您需要一种方法来刷新最后一个切片。