如何通过Chrome中的代码设置JavaScript断点?

我想强制Chrome调试器通过代码或使用某种注释标签(例如)来中断一行代码console.break()

EvaEva斯丁2020/03/11 15:16:37

有很多方法可以调试JavaScript代码。以下两种方法被广泛用于通过代码调试JavaScript

  1. 使用console.log()浏览器控制台打印出来的值。(这将帮助您了解代码某些点的值)

  2. 调试器关键字。添加debugger;到要调试的位置,然后打开浏览器的开发人员控制台并导航到“源”选项卡。

W3School此链接中提供了更多调试JavaScript代码的工具和方式

JimLEYHarry2020/03/11 15:16:37
GO阿飞2020/03/11 15:16:37

断点

断点将停止执行,并让您检查JavaScript值。

检查值之后,您可以继续执行代码(通常使用播放按钮)。

调试器:

调试器;停止执行JavaScript,并调用调试功能。

debugger语句暂停执行,但不会关闭任何文件或清除任何变量。

Example:-
function checkBuggyStuff() {
  debugger; // do buggy stuff to examine.
};
乐米亚2020/03/11 15:16:37

这是可能的,并且有很多原因您可能想要这样做。例如,调试接近页面加载开始时的javascript无限循环,这会阻止chrome开发人员工具集(或firebug)正确加载。

参见第2节

http://www.laurencegellert.com/2012/05/the-three-ways-of-setting-breakpoints-in-javascript/

或仅在所需的测试点在代码中添加包含调试器一词的行。

前端飞云2020/03/11 15:16:36

您也可以使用debug(function),以中断function被调用的时间。

命令行API参考:调试

Sam阳光2020/03/11 15:16:36

您可以debugger;在代码中使用如果开发者控制台已打开,则执行将中断。它也可以在萤火虫中使用。

凯泡芙Davaid2020/03/11 15:16:36

debugger 是EcmaScript的保留关键字,自ES5起提供了可选的语义

其结果是,它不仅可以在Chrome中使用,但也Firefox和Node.js的通过node debug myscript.js

标准说

句法

DebuggerStatement :
    debugger ;

语义学

评估DebuggerStatement生产可能会允许实现在调试器下运行时导致断点。如果调试器不存在或未处于活动状态,则此语句无效。

生产DebuggerStatement:调试器; 评估如下:

  1. 如果实现定义的调试工具可用并已启用,则
    1. 执行实现定义的调试操作。
    2. 令result为实现定义的完成值。
  2. 其他
    1. 令结果为(正常,空,空)。
  3. 返回结果。

ES6中没有更改。

Sam小哥逆天2020/03/11 15:16:36

正如其他人已经说过的那样,debugger;是要走的路。我编写了一个小脚本,可以在浏览器中的命令行中使用该小脚本,以在函数调用之前立即设置和删除断点:http : //andrijac.github.io/blog/2014/01/31/javascript-breakpoint/

逆天斯丁前端2020/03/11 15:16:36

在“脚本”选项卡上,转到代码所在的位置。在行号的左侧,单击。这将设置一个断点。

屏幕截图:

chrome中的断点屏幕截图

然后,您将能够在右侧选项卡中跟踪断点(如屏幕截图所示)。

米亚小哥斯丁2020/03/11 15:16:36

设置按钮点击监听器,然后调用 debugger;

$("#myBtn").click(function() {
 debugger;   
});

演示版

http://jsfiddle.net/hBCH5/

JavaScript调试资源