我已经阅读了关于Chrome和Firefox的开发工具中断点的文档,而没有在下面的问题上变得更明智。猜猜一些细节只是被视为理解。
为了清楚起见,当我在一行上设置一个断点时,执行是否在之前停止, 之后
如果之前的,如果行,
LI>为什么我经常无法在特定行上设置断点,这有多么复杂的原因。例如,在if
语句或空行。有时我的断点甚至会被重新移动。 Buggyness?
我似乎无法推断出断点放在仅包含括号的行()
}
]
)时会发生什么的逻辑。
答案 0 :(得分:2)
断点在线路运行之前停止执行。
要在一行之后停止执行,请在结束括号上的下一行设置断点,或者如果它是最后一行。
在此示例中的第3行设置断点:
1. if (true) {
2. console.log('hello');
3. }
您可以在if
语句中设置断点。在上面的if (true)
行设置断点应该按预期工作。是的,当Chrome决定自动将它们移动到某些封闭括号时,添加断点有时会出错。在这些情况下,强制刷新可能会有所帮助,但添加debugger;
代替断点是一种更可靠的解决方法。
孤立的括号会被视为上一行/下一行的一部分。
在此示例中,在第1行设置断点可让您检查第1-5行。任何第2-5行的断点都会自动移动到第6行。在()[]
括号上设置断点没有太大价值。花括号{}
是最重要的。
1. if (a &&
2. (
3. b || c
4. )
5. ) {
6. console.log('hello');
7. }