有没有办法打破 Google Chrome 中的警告?

Is there a way to break on warnings in Google Chrome?

我想查看警告以便更好地调试我在 Asp.Net 中创建的应用程序,因此它在 javascript 中生成了很多代码。问题是页面重新加载速度很快,我无法查看警告消息。我想知道是否有办法在 Google Chrome 中中断警告,因为在 this question 中描述了如何中断错误。有没有办法做到这一点,或者我有什么替代方案?

如果您只是想查看控制台消息,打开 "Preserve log" 可能是一个更简单的解决方案。

正如@Nitsew 所说,保留日志是一个很好的解决方案。但只是为了好玩,并且因为我认为您的问题很有趣,所以我决定制定一个解决方案来完成您的要求;使用 warn 时导致调试发生:

function testBreak() {
    console.warn('This is a warning', 1, 2);
    return 1;
}

var oldWarningFunction = console.warn;
console.warn = function () {
    debugger;
    oldWarningFunction.apply(console, arguments);
};

console.log(testBreak());

本质上,我对原始 console.warn 进行了猴子修补以输出调试器语句。当这导致调试发生时,您可能需要查看堆栈跟踪以了解您在代码中的位置:

在该堆栈跟踪上单击返回后,您可以看到进行调用的函数。

这一切看起来都很愚蠢,因为您可以直接在代码中需要的地方编写自己的 debugger 语句。还有一件事,对于任何可能阅读并尝试它的人:不要将其留在您的生产代码中