我正在 Chrome 中寻找与 Firebug 的“中断所有错误”功能等效的功能。在“脚本”选项卡中,Chrome 有一个“暂停所有异常”,但这与中断所有错误并不完全相同。
例如,当使用以下代码加载页面时,我希望 Chrome 中断 foo.bar = 42
行。相反,即使启用“暂停所有异常”,我也没有得到预期的结果。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script type="text/javascript">
function doError() {
foo.bar = 42;
}
window.onload = function() {
try {
doError();
} catch (e) {
console.log("Error", e);
}
}
</script>
</head>
<body>
</body>
</html>
您可以尝试在 此页面 上粘贴的代码或使用此 jsFiddle 。
原文由 avernet 发布,翻译遵循 CC BY-SA 4.0 许可协议
编辑: 我回答的原始链接现在无效。截至 2016 年 11 月 11 日,较新的 URL 将是 https://developers.google.com/web/tools/chrome-devtools/javascript/add-breakpoints#exceptions 。
我意识到这个问题有答案,但它不再准确。 使用上面的链接^
(链接替换为上面的编辑)-您现在可以将其设置为中断所有异常或仅处理未处理的异常。 (请注意,您需要在 Sources 选项卡中才能看到该按钮。)
Chrome 现在还添加了一些其他非常有用的断点功能,例如中断 DOM 更改或网络事件。
通常我不会重新回答问题,但我自己也有同样的问题,我发现了这个现在错误的答案,所以我想我会把这些信息放在这里,以供后来搜索的人使用。 :)