如何在 Internet Explorer 中使用控制台日志记录?

IT技术 javascript internet-explorer internet-explorer-8 console firebug
2021-02-04 16:10:00

是否有用于 IE 的控制台记录器?我正在尝试将一堆测试/断言记录到控制台,但我无法在 IE 中执行此操作。

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()

注意:看来您必须先启动开发人员工具,然后刷新页面才能使其正常工作。

啊,虽然它没有Firebug,但它仍然有我需要的东西。谢谢!
2021-03-17 16:10:00
请注意,在 IE 中,与 Firefox 不同,如果开发人员工具未激活,则 window.console 未定义并且调用console.log()将中断。始终保护您的通话window.console && console.log('stuff');
2021-03-24 16:10:00
如果任何人仍然找不到它,请不要像我所做的那样尝试在窗口的顶部键入您的脚本:输入区域实际上是开发人员工具控制台窗口底部的文本区域/栏.
2021-04-09 16:10:00
链接到MSDN
2021-04-10 16:10:00
这仅适用于 IE8+,但它是一个非常好的控制台。它基本上是 Firebug 的复制品,缺少一些功能,并加入了其他一些功能。在 MSDN 上搜索它。
2021-04-13 16:10:00

从版本 8 开始,Internet Explorer 与其他浏览器一样拥有自己的控制台。但是,如果未启用控制台,则console对象不存在并且调用console.log将抛出错误。

另一种选择是使用log4javascript(完全披露:由我编写),它有自己的日志控制台,适用于所有主流浏览器,包括 IE >= 5,加上浏览器自己控制台的包装器,避免了 undefined 的问题console

@Tim Down 有一个解决方法stackoverflow.com/a/13817235/3057246
2021-03-20 16:10:00
哈..几个月我写了类似的东西。干得好!
2021-04-14 16:10:00

如果在生产中使用 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
        };
    }
}());