6
Jun 2017

Best practices for writing JavaScript for Project Online – Part 3

Create dummy console object to avoid script error in Internet Explorer


One common issue I face with Internet Explorer version 11 and below is that If I my code uses console object for diagnostics, it blocks the execution of rest of the script.

Interestingly, if I open a debug console (by pressing F12 or right click -> Inspect element), the script executes just fine without any error message. After some google search it turned out that IE does not have a console object defined if a console window is not already open. See this stack overflow question for details

https://stackoverflow.com/questions/10183440/console-is-undefined-error-in-ie9

To avoid this error simply add these lines at the start of your JavaScript code. This will create a dummy console object if the real console object doesn’t exist already.

window.console = window.console || (function(){
var c = {}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){};
return c;
})();
view raw console proxy hosted with ❤ by GitHub

0 comments:

Post a Comment