Last Updated: May 04, 2016
·
1.565K
· shakeelmohamed

Silence JavaScript console output

This is super helpful for unit testing with 100% code coverage, while maintaining a clean test output on the console!

First you need some basic setup code:

// Backup console.log so we can restore it later
var ___log = console.log;
/**
 * Silences console.log
 * Undo this effect by calling unmute().
 */
function mute() {
    console.log = function(){};
}
/**
 * Un-silences console.log
 */
function unmute() {
    console.log = ___log;
}

Then, you can write code using mute() and unmute() like so:

mute();
MyClass.functionThatPrintsOutput();
unmute();