首页 文章

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

提问于
浏览
601

我想强制Chrome调试器通过代码中断,或者使用某种评论标记,例如 console.break() .

10 回答

  • 3

    您也可以将 debug(functionName) 设置为调试函数 .

    https://developers.google.com/web/tools/chrome-devtools/javascript/breakpoints#function

  • 1037

    你也可以使用 debug(function) ,在调用 function 时中断 .

    Command Line API Reference: debug

  • 17

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

  • 16

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

  • 2

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

    • 使用 console.log() 在浏览器控制台中打印出值 . (这有助于您了解代码中某些点的值)

    • Debugger关键字 . 将 debugger; 添加到要调试的位置,然后打开浏览器的开发人员控制台并导航到sources选项卡 .

    有关调试JavaScript代码的更多工具和方法,请参见this link by W3School .

  • 22

    debugger is a reserved keyword by EcmaScript and given optional semantics since ES5

    因此,它不仅可以用于Chrome,还可以用于Firefox和Node.js via node debug myscript.js .

    standard says

    语法DebuggerStatement:
    调试器;
    语义评估DebuggerStatement生成可能允许实现在调试器下运行时导致断点 . 如果调试器不存在或处于活动状态,则此语句没有可观察到的影响 . 生产环境 DebuggerStatement:debugger;评估如下:如果实现定义的调试工具可用并启用,则执行实现定义的调试操作 . 让result为实现定义的Completion值 . 否则让结果为(正常,空,空) . 返回结果 .

    ES6没有变化 .

  • 0

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

    见第2节

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

    或者只是在所需的测试点添加一行包含单词debugger的代码 .

  • 2

    设置按钮单击侦听器并调用 debugger;

    Example

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

    Demo

    http://jsfiddle.net/hBCH5/

    Resources on debugging in JavaScript

  • 7

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

    截图:

    screenshot of breakpoint in chrome

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

  • 6

    断点: - 断点将停止执行,让你检查JavaScript值 . 检查值后,您可以继续执行代码(通常使用播放按钮) . 调试器: - 调试器;停止执行JavaScript,并调用调试函数 . 调试器语句暂停执行,但它不会关闭任何文件或清除任何变量 .

    Example:-
    function checkBuggyStuff() {
      debugger; // do buggy stuff to examine.
    };
    

相关问题