浏览器兼容console对象的简要解决方案分享
作者:
不同浏览器或者版本之间对于console对象的支持不尽相同,而console方法在开发调试过程中都是不错的工具。难道要在上线前把所有console.xxxx去掉以保证某些浏览器不报错么。其实可以变通解决
浏览器报找不到console对象,那我们就手动构造一个接口完全一致的console对象 置于window中。这里采用了空方法和空对象。如此一来即使在很old的浏览器中,含有console.xxxxx的代码依然不会报错,完美运行。
下面附上修复兼容代码,要置于置于第一句console.xxxx调用之前,否则没有意义。
复制代码 代码如下:
(function (){
//创建空console对象,避免JS报错
if(!window.console)
window.console = {};
var console = window.console;
var funcs = ['assert', 'clear', 'count', 'debug', 'dir', 'dirxml',
'error', 'exception', 'group', 'groupCollapsed', 'groupEnd',
'info', 'log', 'markTimeline', 'profile', 'profileEnd',
'table', 'time', 'timeEnd', 'timeStamp', 'trace', 'warn'];
for(var i=0,l=funcs.length;i<l;i++) {
var func = funcs[i];
if(!console[func])
console[func] = function(){};
}
if(!console.memory)
console.memory = {};
})();
您可能感兴趣的文章:
- javascript 在firebug调试时用console.log的方法
- javascript的console.log()用法小结
- C# Console类的具体用法
- JavaScript调试技巧之console.log()详解
- ie9 提示''console'' 未定义问题的解决方法
- js调试工具console.log()方法查看js代码的执行情况
- 用console.table()调试javascript
- js调试工具Console命令详解
- JavaScript中的console.trace()函数介绍
- JavaScript中的console.dir()函数介绍
- JavaScript中的console.assert()函数介绍
- 使用console进行性能测试