node.js - 如何使用 Node js 创建条件调试 Visual Studio Code

标签 node.js debugging visual-studio-code

我有一个循环,它有大约 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 循环中设置条件断点:

  1. 在常用装订线区域中右键单击要设置断点的行。
  2. 选择“添加条件断点...”
  3. 确保在小下拉框中选择“表达式”(默认)。
  4. 在文本输入行中输入 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/

相关文章:

node.js - 什么查询或运算符将有助于找出 mongoDb 中数组元素的累积和

delphi - 进程名称在 Delphi XE 中不可见附加到进程对话框 - 无法调试

c++ - 使用 -O2 标志将 gdb 步进到上一行

c++ - 在 Visual Studio Code 中对 native C++ 进行单元测试

visual-studio-code - 如何在 VS Code 的集成终端中设置下拉 View ?

javascript - 比较密码 BcryptJS

sql-server - Node.js MSSQL tedius ConnectionError : Failed to connect to localhost:1433 - connect ECONNREFUSED

node.js - 修改 Alexa Audio Player 示例项目以播放特定轨道

php - print_r 返回值不正确

bash - VSCode : Code Runner extension is unable to execute the code on git bash terminal?