我想覆盖console.log并在我的新功能上调用它。Javascript - 覆盖console.log并保留旧功能
我尝试这样的事情,但我得到Uncaught TypeError: Illegal invocation
:
console.log = function() {
this.apply(window, arguments);
}.bind(console.log);
console.log('as');
这是我的目标:
console.error(exception);
应该做的:
console.error = function() {
if (typeof exception.stack !== 'undefined') {
console.error(exception.stack);
} else {
console.error.apply(windows, arguments);
}
}.bind(console.error);
console.error('as');
console.error({stack: 'my stack....'});
编辑: 事实上,它工作在Firefox和不在Chrome ... 这是Chrome中的一个错误:https://code.google.com/p/chromium/issues/detail?id=167911
这很难说,你的目标是什么。在调用console.log时以及调用原始的console.log时是否要调用不同的函数? – DCoder 2013-03-27 11:27:48
我编辑添加我的目标。 – Charles 2013-03-27 11:30:40