使用Visual Studio Code进行本地/远程调试
Visual Studio Code(VS Code)是Ubuntu下调试Node.js的高效工具,内置对Node.js的支持。首先打开项目文件夹,点击左侧调试图标(或按Ctrl+Shift+D
),点击齿轮图标创建launch.json
文件,选择“Node.js”环境并配置(如指定入口文件program
、是否开启--inspect-brk
等)。配置完成后,在代码中添加断点,点击绿色三角形按钮即可启动调试。若需远程调试Ubuntu服务器上的代码,可通过VS Code的Remote-SSH扩展连接服务器,后续步骤与本地调试一致。
利用Node.js内置调试器
Node.js自带的调试器基于Chrome DevTools协议,无需额外安装工具。启动调试模式有两种方式:node --inspect app.js
(正常启动后等待调试器连接)或node --inspect-brk app.js
(在第一行暂停,方便设置初始断点)。启动后,打开Chrome浏览器访问chrome://inspect
,在“Remote Target”中找到对应进程,点击“inspect”即可打开DevTools,进行断点管理、变量查看、单步执行等操作。
结合nodemon实现热重载调试
开发过程中,频繁重启应用会影响效率。nodemon
可在文件修改后自动重启Node.js应用,配合调试器使用能提升迭代速度。首先全局安装nodemon
(npm install -g nodemon
),然后通过nodemon --inspect app.js
启动应用。此时,VS Code或Chrome DevTools仍可正常连接调试,修改代码后保存,nodemon会自动重启并保持调试状态。
使用console.log()与debug模块进行基础调试
console.log()
是最直接的调试方法,可在代码中输出变量值、函数调用信息等,帮助快速定位问题(如console.log('Current user:', user)
)。debug
模块则提供了更灵活的选择性日志功能,通过require('debug')('myapp:server')
创建调试实例,使用debug('Server started')
输出日志。启动应用时设置DEBUG
环境变量(如DEBUG=myapp:server node app.js
),即可显示对应前缀的日志,避免无关信息干扰。
借助第三方工具增强调试能力
ndb your-script.js
启动,直接打开专用调试窗口。npm install -g node-inspector
安装,使用node-debug your-script.js
启动,配合Chrome DevTools进行调试。