【发布时间】:2017-04-26 16:54:37
【问题描述】:
我想知道是否有办法在任何浏览器中的一段代码上设置断点,而不仅仅是在一行代码上。我正在尝试调试一些 JavaScript,并且在错误的行处断点非常烦人,因为我必须在断点上方添加或删除一行。所以我发现我经常不得不在代码编辑后移动断点。
【问题讨论】:
标签: javascript google-chrome-devtools firebug microsoft-edge firefox-developer-tools
我想知道是否有办法在任何浏览器中的一段代码上设置断点,而不仅仅是在一行代码上。我正在尝试调试一些 JavaScript,并且在错误的行处断点非常烦人,因为我必须在断点上方添加或删除一行。所以我发现我经常不得不在代码编辑后移动断点。
【问题讨论】:
标签: javascript google-chrome-devtools firebug microsoft-edge firefox-developer-tools
debugger statement 是在 ECMAScript 5.1 中引入的。
调试器语句调用任何可用的调试功能,例如设置断点。如果没有可用的调试功能,则此语句无效。
console.log("Before breakpoint");
debugger;
console.log("After breakpoint");
【讨论】:
if (variable == "whatever") debugger。您甚至可以将属性附加到window 以启用禁用调试,因此您的条件看起来像if (window.debugMode && condition) debugger
window.debugMode 是个好主意。我只是希望浏览器可以注意到我设置断点的代码的上下文并跟踪它。这样我就不必在调试完成后清理这些debugger 语句了。
debugger 语句是我所知道的唯一允许您在代码中的特定位置而不是行号中断的东西。