Can I extend the console object (for rerouting the logging) in javascript?

prefabSOFT picture prefabSOFT · Feb 14, 2012 · Viewed 15.6k times · Source

Is it possible to extend the console object?

I tried something like:

Console.prototype.log = function(msg){
    Console.prototype.log.call(msg);
    alert(msg);
}

But this didn't work. I want to add additional logging to the console object via a framework like log4javascript and still use the standard console object (in cases where log4javascript is not available) in my code.

Thanks in advance!

Answer

Sergey Ilinsky picture Sergey Ilinsky · Feb 14, 2012

Try following:

(function() {
    var exLog = console.log;
    console.log = function(msg) {
        exLog.apply(this, arguments);
        alert(msg);
    }
})()