Chrome调试器 - 如何关闭console.log消息分组?

时间:2014-09-07 01:15:07

标签: javascript google-chrome google-chrome-extension google-chrome-devtools

说,在我的Google Chrome扩展程序中,我这样做:

console.log(msg);

并且Chrome调试器将类似的消息分组如下:

enter image description here

是否有任何关闭它并将消息发布为原样?

4 个答案:

答案 0 :(得分:31)

它只会折叠相同的连续行,我不认为这是一个很大的问题,但是通过控制台右上角的设置按钮,您可以启用“显示时间戳”,这将使它们处于不同的状态行:

enter image description here

您可以看到它们只会折叠连续的重复项:

msgs = ['hello', 'world', 'there'];
for (i = 0; i < 20; i++) console.log(msgs[Math.floor((i/3)%3)]) 

console api有很多其他功能可以帮助您遵循代码。例如,console.count(label)日志标签包含记录的次数,console.group()允许您将其他日志记录呼叫组合在一起,console.timeline(label)允许您将日志分组到时间线中。

答案 1 :(得分:2)

有人在那里遇到同样的问题:Google Chrome developer tools console logging… almost useless?没有答案可以禁用此功能。

作为解决方法,您可以在开发人员工具设置中为控制台启用显示时间戳

答案 2 :(得分:1)

只有在上一个相同的情况下才能折叠信息。
要防止邮件折叠,您可以替换日志级别,也可以使用备用日志输出。

console.logconsole.debug在Chrome的devtools中在视觉上相似(即前面没有图标)。如果您不使用详细过滤器,那么在console.logconsole.debug之间交替将解决您的问题:

console.log('message');
console.debug('message');
console.log('message');

// Convenience function:
function log() {
    log.counter = log.counter ? log.counter + 1 : 1;
    console[log.counter % 2 ? 'log' : 'debug'].apply(console, arguments);
}

获得所需结果的另一种方法是在消息前插入一个不可见的字符(注意:我使用%s来防止出现额外的空格(参见devtools formatting options),还有一个ZWSP,以防止任何视觉角色出现):

function log() {
    log.counter = log.counter ? log.counter + 1 : 1;
    var args = [].slice.call(arguments);
    if (log.counter % 2) {
        args.unshift('%s\u200B'); // ZWSP (zero-width space, you won't see it)
    }
    console.log.apply(console, args);
}

演示:http://jsfiddle.net/x3725j38/1/

答案 3 :(得分:0)

在控制台窗口的右上角,有一个齿轮按钮,用于打开一个面板,该面板的设置为“分组相似”。如果您取消选中此复选框,则相似的日志条目将不再分组在一起。

enter image description here