提问人:Paul 提问时间:4/7/2012 最后编辑:Ciro Santilli OurBigBook.comPaul 更新时间:4/11/2023 访问量:311946
如何在 Chrome 中的代码中设置 JavaScript 断点?
How to set a JavaScript breakpoint from code in Chrome?
答:
您可以在代码中使用。如果开发人员控制台处于打开状态,则执行将中断。它也适用于firebug。debugger;
评论
setTimeout(function(){debugger;}, 3000);
debugger;
在“脚本”标签上,转到代码所在的位置。在行号的左侧,单击。这将设置一个断点。
截图:
然后,您将能够在右侧选项卡中跟踪断点(如屏幕截图所示)。
评论
这是可能的,您可能有很多原因想要这样做。例如,在页面加载开始时调试一个 javascript 无限循环,这会阻止 chrome 开发者工具集(或 firebug)正确加载。
参见第 2 节
http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/
或者,只需在所需的测试点向代码添加一行包含单词调试器的行。
正如其他人已经说过的那样,这是要走的路。
我编写了一个小脚本,您可以在浏览器的命令行中使用该脚本在函数调用之前设置和删除断点: http://andrijac.github.io/blog/2014/01/31/javascript-breakpoint/debugger;
设置按钮单击侦听器并调用debugger;
例
$("#myBtn").click(function() {
debugger;
});
演示
有关在 JavaScript 中进行调试的资源
- http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/
- 网址:http://berzniz.com/post/78260747646/5-javascript-debugging-tips-you'll-start-using-today
评论
debugger
是 EcmaScript 的保留关键字,自 ES5 起提供可选语义
因此,它不仅可以在Chrome中使用,还可以通过节点调试myscript.js
在Firefox和Node.js中使用。
该标准说:
语法
DebuggerStatement : debugger ;
语义学
评估 DebuggerStatement 生产可能会允许实现在调试器下运行时导致断点。如果调试器不存在或处于活动状态,则此语句没有可观察到的效果。
生产 DebuggerStatement : 调试器;评估如下:
- 如果实现定义的调试工具可用且已启用,则
- 执行实现定义的调试操作。
- 设 result 为实现定义的 Completion 值。
- 还
- 设 result 为(normal, empty, empty)。
- 返回结果。
ES6 没有变化。
您还可以使用 ,在调用时中断。debug(function)
function
评论
断点:-
断点将停止执行,并允许您检查 JavaScript 值。
检查值后,可以继续执行代码(通常使用播放按钮)。
调试器:-
调试器;停止 JavaScript 的执行,并调用调试函数。
debugger 语句暂停执行,但不会关闭任何文件或清除任何变量。
Example:-
function checkBuggyStuff() {
debugger; // do buggy stuff to examine.
};
您也可以设置为调试函数。debug(functionName)
https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints#function
调试 JavaScript 代码的方法有很多种。以下两种方法被广泛用于通过代码调试 JavaScript
用于在浏览器中打印出值 安慰。(这将帮助您了解某些点的值 的代码)
console.log()
Debugger 关键字。添加到您想要的位置 调试,然后打开浏览器的开发人员控制台并导航到 “源”选项卡。
debugger;
有关调试 JavaScript 代码的更多工具和方法,请参阅 W3School 的此链接。
如果您只想杀死并停止 javascript 代码,我不建议这样做,因为只会暂时冻结您的 javascript 代码,而不是永久停止它。debugger;
debugger;
如果您想按照您的命令正确终止和停止 javascript 代码,请使用以下命令:
throw new Error("This error message appears because I placed it");
这个要点 Git 预提交钩子,用于从 merb 项目中删除杂散调试器语句
如果要在提交时删除断点,可能很有用debugger
评论
debugger;