为什么 Node 调试器 "break on first line" 是个东西?

Why is the Node debugger "break on first line" a thing?

我认为新的 VS Code 调试器在我的文件中的 'use strict'; 停止的原因是因为新版本的 Node 中出现了一些奇怪的贬低行为,或者因为我的代码中有一些奇怪的错误。

然后我意识到"break on first line"是一种东西,而且是人们想要的东西。为什么这是一回事?我知道我的脚本有第一行,非常感谢。如果没有,我会遇到更大的问题。那么为什么调试器需要这样做呢?

之所以 "break on first line" 是一项功能,是因为您可以 运行 您的应用程序,并在继续之前让它停在第一行。

这允许您在 Node 执行某些代码之前附加调试器。这使您能够调试最开始的代码行、设置更多断点或在您准备好时跳过代码行。

这实际上是调试器中一个非常常见的功能,特别是如果您不一定有办法在 运行 代码之前设置断点。

在launch.json中有一个属性 stopOnEntry默认设置为true。如果您不想让节点调试器 "break on first line" 将此 属性 设置为 false。

现在有一个开关:

--inspect vs --inspect-brk