我有一个循环,它有大约 300 次迭代的巨大迭代,它可能很小,但我在使用这个循环进行调试时遇到问题,让我们看看下面的代码(示例 并且它不属于代码的确切内容)。
const myVar = [
{ name: 'basil', age: 25 },
{ name: 'basil', age: 25 },
{ name: 'basil', age: 25 },
{ name: 'basil', age: undefined },// line number four
{ name: 'basil', age: 25 }
]
for (i = 0; i < myVar.length; i++) {
console.log(myVar[i].name + ' ' + myVar[i].age) // line code
}
现在正如你在上面看到的,有 5 个对象,实际上我有 300 个带有非虚拟代码的对象,for 循环有很多代码行。但这就足够了
如果我在 //line code
处启用断点,我将需要继续 300 次迭代,直到到达像 //line number four
这样的对象,该对象有问题,因为您看到年龄未定义,仅当该值未定义时我才需要跟踪行为,因此仅当该值未定义时我才需要启用断点。
我能够创建一个解决方法,例如检查未定义然后启用调试,但我需要调试配置中的某些内容。
我看了一下this页面,但它对我没有帮助
最佳答案
您可以在 for 循环中设置条件断点:
- 在常用装订线区域中右键单击要设置断点的行。
- 选择“添加条件断点...”
- 确保在小下拉框中选择“表达式”(默认)。
- 在文本输入行中输入
myVar[i].age == undefined
,按回车键并运行调试 session 。
有一个未绑定(bind)的命令editor.debug.action.conditionalBreakpoint
,如果您经常这样做,可以将其设置为键绑定(bind)。
关于node.js - 如何使用 Node js 创建条件调试 Visual Studio Code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52494626/