JavaScript:有没有办法让Chrome打破所有错误?铬 101.0.4951.64 [27 五月 2022]

我正在寻找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


答案 1

我遇到麻烦,所以我发布了显示不同选项的图片:

101.0.4951.64 [27 五月 2022]

至少自Chrome 38.0.2125.111以来非常相似的UI [2014年12月11日]

在选项卡中 :Sources

enter image description here

激活按钮后,您可以使用以下复选框:Pause On Caught Exceptionsenter image description here


以前的版本

32.0.1700.102 [03 Feb 2014]

enter image description here

enter image description hereenter image description hereenter image description here

27.0.1453.93 稳定版

Debug options


答案 2

编辑:我回答的原始链接现在无效。较新的URL将于2016-11-11 https://developers.google.com/web/tools/chrome-devtools/javascript/add-breakpoints#exceptions

我意识到这个问题有一个答案,但它不再准确。使用上面的链接 ^


(链接由上面编辑的链接替换) - 您现在可以将其设置为在所有异常或仅未处理的异常时中断。(请注意,您需要在“”选项卡中才能看到该按钮。

Chrome现在还添加了其他一些非常有用的断点功能,例如在DOM更改或网络事件时中断。

通常情况下,我不会重新回答一个问题,但我自己也有同样的问题,我发现了这个现在错误的答案,所以我想我会把这些信息放在这里,供后来搜索的人使用。:)