JS - 解决console代码在IE8、IE9下报错的问题('console'未定义)
1,问题描述
(1)最近在做一个内网项目,由于内网用户电脑的浏览器都比较古老(IE8),这样我开发调试页面时也必须使用 IE8,以保证兼容。
(2)开始过程中不免要使用 console.log() 方法输出一些调试信息。
<script type="text/javascript"> console.log("欢迎访问hangge.com"); </script>
- 但低版本的 IE 浏览器(IE8、IE9)必须在“开发人员工具”窗口打开时,console 代码才会有效:
- 如果“开发人员工具”没有打开,那么执行 console 相关的代码就会直接报错:
2,解决办法
我们可以在页面中加入如下 js 代码,其作用是:
- 如果浏览器支持 console,则输出内容。
- 不支持的(如:IE8、IE9)则不会输出,从而不会导致错误。
<script type="text/javascript"> //解决 IE8、IE9 不支持 console 问题 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; })(); </script>