console.log('hi');
undefined
6.0有类似的实现吗?还是我做错了什么?
我发现了问题!日志不会出现在交互式控制台(位于底部)中,而是出现在当前日志窗口中!您可以通过Develop > Show Error Console
或 Web Inspector 中最右侧的源图标访问它。
这么奇怪!在控制台中获得简单的输出有那么难吗,比如puts
在print
Ruby 中?
不是首选,但它有效。
console.error(message);
注意:我正在跑步gulp serve -d -w
,其中包括手表。即使这样,在我重新启动 gulp 之前我也看不到这些消息。
我必须开发“for Safari”作为我的主要目标,但由于 Chrome 和 Safari 都使用 WebKit 作为它们的引擎,它们在执行上几乎相同(一个区别是 Safari 将日期字符串解析为更差的日期)。
因此,只要您在签入代码之前在 Safari 中进行最后的健全性检查,在 Chrome 中进行调试和开发通常就足够了。
话虽如此,我编写了一个控制台包装器,它使我能够console.log
在任何浏览器中调用......如果它支持 console.log,那么它就可以工作......否则它将消息记录在一个可以检查的数组中。
//======================================================//
// multi browser compatibility - not all support console
//======================================================//
var dummyConsole = [];
var console = console || {};
if (!console.log) {
console.log = function (message) {
dummyConsole.push(message);
}
}
如果您使用的是 JQuery,我所做的就是向页面动态添加一个输出字段,以便我可以看到 JavaScript 值。z-index 是为了让它保持在顶部。随心所欲地设计它。我通常添加彩色边框或明亮的背景颜色,以便在屏幕上轻松找到。
var output= 'hello';
$('body').append("<div style='width:50px;z-index:1000'>" + output + "</div>");
我最近遇到了这篇文章,因为我在 Safari 14 上遇到了类似的问题。我为 Safari 使用了 Grammarly,它创建了另一个发送请求的框架。这也可能发生在其他扩展上。
默认情况下,Safari 应该选择正确的帧,但如果没有,那么您将看不到控制台日志。如果发生这种情况,控制台窗口的右下角会出现一个下拉菜单。如果您选择网站框架,日志将开始出现。