Javascript console.log命令的浏览器兼容性问题

参考:http://www.douban.com/note/276503240/

IE等不支持console.log命令的浏览器,不仅无法执行console.log而且会因为该命令导致页面出错而无法正常执行。

消除因为该命令报错的方案为:

//在所有js代码前面添加如下代码:

var console=console||{log:function(){return;}}
// Avoid `console` errors in browsers that lack a console.
$(function() {
    var method;
    var noop = function () {};
    var methods = [
        'assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'error',
        'exception', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log',
        'markTimeline', 'profile', 'profileEnd', 'table', 'time', 'timeEnd',
        'timeStamp', 'trace', 'warn'
    ];
    var length = methods.length;
    var console = (window.console = window.console || {});
    while (length--) {
        method = methods[length];
        // Only stub undefined methods.
        if (!console[method]) {
            console[method] = noop;
        }
    }
}());


注:经验证在IE7/8下有效。

你可能感兴趣的:(javascript)