Node 自带的调试器支持单步执行和REPL( 读取 - 计算 - 输出 - 循环)。
这个调试器在工作时会用一个网络协议和开发者编写的程序对话。
带着debug 参数运行程序,就可以对这个程序开启调试器。
比如调试我们之前编写的hello.js
现在的Node 好像已经不支持直接
node debug hello.js这样的命令了,会报出找不到模块的错误
现在使用node inspect hello.js

可以看到,Node 启动了这个程序,并连接到9229端口上对它进行调试

输入help 可以查看它的命令,然后输入命令让程序继续执行。
Node 启动程序时,总是把它置于 break 状态上,所以在你想做任何事情之前,总要先让它继续执行。
当然这个hello.js 程序中只有一句代码,输出一条东西,没有什么调试的必要。

当我们给程序打上断点,再次调试,代码运行会停在断点处。
我们也可以在程序的任何地方添加debugger 语句来设置断点,调试时遇到debugger 语句后,调试器就会把程序运行停住,等待开发者输入调试命令。

这些debug 命令怎么用后面还会进行详细介绍。
Node 支持Chrome 调试协议,如果要用Chrome 的开发者工具调试一段脚本,可以像下面这样书写命令:
node --inspect-brk
- 1
打开这个URL ,然后用Chrome的调试器进行调试。