javascript - console.log() 语句不会出现在 Safari 错误日志中

标签 javascript safari debugging webkit

我正在调试特定于 Safari 的 javascript 问题,我无法将 console.log 输出到错误日志。这是 documented feature Safari(我使用的是 4.0.3 版)。然而,我的代码中的这些语句似乎被忽略了。为什么?

最佳答案

感谢 Breton 和 SeanJA 提出的直接在控制台中进行测试并制作示例文件的建议。这样做之后,我意识到 console.log 实际上是在一个隔离的环境中工作。这让我意识到它一定是我的开发环境所特有的。检查了一下,我发现早期加载了一些 JavaScript,旨在为不支持 Firebug 的浏览器定义控制台对象。

if (!("console" in window) || !("firebug" in console))
 {
     var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
     "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];

     window.console = {};
     for (var i = 0; i < names.length; ++i)
         window.console[names[i]] = function() {}
 }

这显然是在 Safari 为其错误窗口实现控制台对象之前编写的。

我已经删除了它,现在一切正常。谢谢,伙计们。

关于javascript - console.log() 语句不会出现在 Safari 错误日志中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1441860/

相关文章:

javascript - 检测任何用户操作事件

javascript - Lawnchair-IndexedDB 不支持多记录

Safari 中 CSS transition background-image jump hover

iphone - iPhone上的NSString drawAtPoint崩溃(NSString drawAtPoint)

debugging - 黑莓:设备上的高效调试?

php - "php -a"交互式 shell 中的 xdebug

javascript - OpenSeadragonselection : Toggle selection state dynamically

javascript - 让服务器返回然后将被调用的 JavaScript 函数的干净方法是什么?

javascript - 为什么此代码在 Firefox、Safari 和 Edge 上无法正常工作

javascript - jCarousel jQuery 插件 - 如何停止双击时选择项目