是否有用于 IE 的控制台记录器?我正在尝试将一堆测试/断言记录到控制台,但我无法在 IE 中执行此操作。
如何在 Internet Explorer 中使用控制台日志记录?
IT技术
javascript
internet-explorer
internet-explorer-8
console
firebug
2021-02-04 16:10:00
6个回答
您可以通过启动“开发人员工具”(F12)来访问 IE8 脚本控制台。单击“脚本”选项卡,然后单击右侧的“控制台”。
在 JavaScript 代码中,您可以执行以下任一操作:
<script type="text/javascript">
console.log('some msg');
console.info('information');
console.warn('some warning');
console.error('some error');
console.assert(false, 'YOU FAIL');
</script>
此外,您可以通过调用清除控制台console.clear()
。
注意:看来您必须先启动开发人员工具,然后刷新页面才能使其正常工作。
从版本 8 开始,Internet Explorer 与其他浏览器一样拥有自己的控制台。但是,如果未启用控制台,则console
对象不存在并且调用console.log
将抛出错误。
另一种选择是使用log4javascript(完全披露:由我编写),它有自己的日志控制台,适用于所有主流浏览器,包括 IE >= 5,加上浏览器自己控制台的包装器,避免了 undefined 的问题console
。
如果在生产中使用 console.log() 非常重要:
如果您最终将console.log()
命令发布到生产中,您需要为 IE 进行某种修复 - 因为console
仅在F12
调试模式下才定义。
if (typeof console == "undefined") {
this.console = { log: function (msg) { alert(msg); } };
}
[显然删除警报(味精); 一旦你验证它有效的声明]
有关其他解决方案和更多详细信息,另请参阅Internet Explorer 的“控制台”未定义错误
有Firebug的精简版这给了很多的IE Firebug的功能。
为其他浏览器保留行编号的简单 IE7 及以下垫片:
/* console shim*/
(function () {
var f = function () {};
if (!window.console) {
window.console = {
log:f, info:f, warn:f, debug:f, error:f
};
}
}());