NodeJS代码的debug
Reading Time:The full text has 528 words, estimated reading time: 3 minutes
Creation Date:2017-11-29
Previous Article:封闭无网络服务器部署Python项目的经验与总结
Next Article:Ant-Design组件api合集(Data_Entry)
BEGIN
前言
碰到NodeJS代码一直很头痛,固话思维js代码都是在浏览器直接执行的,由于前端的可见即可得加上浏览器的调试工具,页面调试js一直很方便.然后碰到NodeJS的杂乱无章的模块就感觉无从下手,今天搜索NodeJS的debug方法特别记录一下,之前c++调试用的gdb,Python调试用的ipdb操作都相似,没想到NodeJS的调试也是如此.
介绍
- 官网介绍请点击NodeJS debug 🔗.
- 通过
node debug xxx.js执行js文件可以进入调试模式. - 手动设置断点,代码中增加语句
debugger; - 命令与调试python的ipdb高度相似.
命令汇总
| 全称 | 简称 | 说明 |
|---|---|---|
| cont | c | 继续执行直到碰到断点才会停下 |
| next | n | 执行当前行代码 |
| step | s | 单步进入 |
| out | o | 跳到当前方法外层或退出单步进入 |
| pause | - | 鸡肋,并不知道存在的作用 |
| setBreakpoint() | sb() | 设置当前行为断点 |
| setBreakpoint(lineNum) | sb(lineNum) | 设置指定行为断点 |
| setBreakpoint(‘fn()‘) | sb(‘fu()‘) | fn为函数名,在函数fn内代码的第一行设置断点 |
| setBreakpoint(‘script.js’, lineNum) | sb(‘script.js’, lineNum) | 在指定文件的指定行设置断点 |
| clearBreakpoint(‘script.js’, lineNum) | cb(‘script.js’, lineNum) | 在指定文件的指定行去除断点 |
| backtrace | bt | 打印堆栈信息 |
| list(lineNum) | - | 显示当前执行行前后lineNum行代码 |
| watch(expr) | - | 监控表达式,表达式需用引号引起来 |
| unwatch(expr) | - | 取消监控表达式,表达式需用引号引起来 |
| watchers | - | 显示所有监控的表达式 |
| repl | - | 进入debugger执行环境上下文,可查看变量的值 |
| exec expr | - | 执行代码 |
| run | - | 继续运行代码,遇到断点不停 |
| restart | - | 运行代码并重新开始 |
| kill | - | 杀死当前脚本运行的脚本 |
| scripts | - | 显示脚本名 |
| version | - | 显示v8引擎版本号 |
| .exit | - | 退出debuger执行环境,相当于ctrl+D |
node-inspector调试
Node Inspector 是 Node.js 应用程序的调试器接口,通过它可以使用 Blink(Chrome 浏览器内核)开发工具来进行 debugging。
- 本机测试node为6.X版本
- 安装:
npm install -g node-inspector或yarn global add node-inspector - 启动:
node-debug app.js
FINISH
Previous Article:封闭无网络服务器部署Python项目的经验与总结
Next Article:Ant-Design组件api合集(Data_Entry)