如何在不修改源代码的情况下,使用Node.js节点inspect命令行步骤调试器在特定函数或行处中断



main.js

#!/usr/bin/env node
function myfunc(i) {
return i + 1;
}
let i = 1;
i += 1;
console.log(myfunc(i));

开始调试:

node inspect main.js

离开我在:

Break on start in main.js:7
5 }
6 
> 7 let i = 1;
8 i += 1;
9 console.log(myfunc(i));

现在我想直接转到myfunc而不需要:

  • nns
  • myfunc中添加debugger语句
  • 使用基于浏览器GUI的调试器

我试过这样的东西:

sb myfunc

myfunc上添加断点,但sb似乎只能在当前行设置断点:

sb myfunc
^^^^^^
Uncaught SyntaxError: Unexpected identifier

在节点v12.18.1上测试。

根据文档,我认为正确的语法是:

sb('myfunc()')

在名为CCD_ 9的函数的第一行设置断点。

您也可以在特定的行号上设置断点:

sb(5)

最新更新