我想通过代码强制Chrome调试器在一行上中断,或者使用某种注释标记,例如console.break()。
当前回答
调试JavaScript代码的方法有很多。以下两种方法被广泛用于通过代码调试JavaScript
使用console.log()在浏览器中打印出值 控制台。(这将帮助您理解某些点上的值 你的代码) 调试器的关键字。添加调试器;去你想去的地方 调试,然后打开浏览器的开发人员控制台并导航到 来源选项卡。
有关调试JavaScript代码的更多工具和方法,请参见W3School提供的这个链接。
其他回答
你也可以使用debug(function),在函数被调用时中断。
命令行API参考:调试
你可以使用调试器;在你的代码中。如果开发人员控制台是打开的,执行将中断。它也适用于firebug。
调试器是EcmaScript保留的关键字,从ES5开始提供可选语义
因此,它不仅可以在Chrome中使用,还可以通过节点调试myscript.js在Firefox和node .js中使用。
标准说:
Syntax DebuggerStatement : debugger ; Semantics Evaluating the DebuggerStatement production may allow an implementation to cause a breakpoint when run under a debugger. If a debugger is not present or active this statement has no observable effect. The production DebuggerStatement : debugger ; is evaluated as follows: If an implementation defined debugging facility is available and enabled, then Perform an implementation defined debugging action. Let result be an implementation defined Completion value. Else Let result be (normal, empty, empty). Return result.
ES6没有变化。
断点:- 断点将停止执行,并让您检查JavaScript值。 检查值之后,可以继续执行代码(通常使用播放按钮)。 调试器: 调试器;停止JavaScript的执行,并调用调试函数。 调试器语句暂停执行,但它不会关闭任何文件或清除任何变量。
Example:-
function checkBuggyStuff() {
debugger; // do buggy stuff to examine.
};
这个Git预提交钩子可以从merb项目中删除错误的调试器语句
如果想在提交时删除调试器断点,可能有用
推荐文章
- 如何使用Jest测试对象键和值是否相等?
- 将长模板文字行换行为多行,而无需在字符串中创建新行
- Chrome:网站使用HSTS。网络错误……这个页面稍后可能会工作
- 如何在JavaScript中映射/减少/过滤一个集?
- 什么是“升级-不安全-请求”HTTP报头?
- 如何验证一个XPath表达式在Chrome开发工具或Firefox的Firebug?
- Bower: ENOGIT Git未安装或不在PATH中
- 为什么Android工作室说“等待调试器”如果我不调试?
- 添加javascript选项选择
- 查看Visual Studio 2010+中的所有断点
- 在Node.js中克隆对象
- 如何删除所有断点在谷歌Chrome一步?
- 为什么在JavaScript的Date构造函数中month参数的范围从0到11 ?
- 使用JavaScript更改URL参数并指定默认值
- 在window.setTimeout()发生之前取消/终止