I'm trying to use console.log to put some logging into the javascript side of my program. I noticed, though, that unless the dev console is open in IE, JS basically stops working when it hits console.log. This is a pain... it means I have to remove all the logging whenever I want to do a production build.
Aside from the obvious:
function DoSafeConsoleLog( parameters )
{
if ( !$.browser.msie )
{
console.log( parameters );
}
}
is there a good way to log javascript that is friendly to all major browsers?
EDIT:
Well, after looking at the duplicate post (oops) as well as considering the answers here, I've gotta side with just checking for the existence of console before calling. Even though I am loathe to have the extra markup, I would rather not step on the feet of future programmers who might want to use Firebug Lite to debug my code.
You can create a fake console
:
if (typeof console === "undefined")
console = { log: function() { } };
IE has its own console, and you wont want to override console if you're using firebug lite. Just make sure that console exists when log gets called:
if (window.console) console.log('foo bar baz', fizz, buzz);
Better yet, use &&
to shortcut:
window.console && console.log('foo bar baz', fizz, buzz);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With