Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

js override console.log if not defined

Which solution do you recommend, the second is simpler ( less code ), but there are drawbacks on using it ?

First: (Set a global debug flag)

// the first line of code var debug = true; try {     console.log } catch(e) {     if(e) {         debug=false;     } }; // Then later in the code if(debug) {     console.log(something); } 

Second: override console.log

try {     console.log } catch(e) {     if (e) {         console.log = function() {}     } }; // And all you need to do in the code is console.log(something); 
like image 385
Radu Maris Avatar asked Sep 22 '10 09:09

Radu Maris


1 Answers

Neither, but a variation of the second. Lose the try...catch and check for existence of the console object properly:

if (typeof console == "undefined") {     window.console = {         log: function () {}     }; }  console.log("whatever"); 
like image 136
Andy E Avatar answered Sep 21 '22 00:09

Andy E