我想覆蓋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