我想修改console.log
,以便使用console.log
保存应用程序输出到命令行的所有内容。
我试过了
var log = console.log;
console.log = function () {
// fs.appendFile('log.txt ..
log.apply(log, arguments);
}
但它给了我错误
Illegal invocation
答案 0 :(得分:3)
apply
的第一个参数是this
将引用的内容。要模仿对console.log()
的调用,您必须传递console
,而不是函数本身:
log.apply(console, arguments);
// log.apply(this, arguments); would work as well