nodejs调试总结
之前nodejs开发中最痛苦的就是调试,因为我之前开发node时使用的编辑器还没有将nodejs的调试也集成进去,所以简单对nodejs开发的调试做了点探索,nodejs本身就有调试功能,同时nodejs源于开源的力量,在开源项目中有一些就是专门进行nodejs调试的,我们来一起看一看吧。
1.node-inspector
https://github.com/node-inspector/node-inspector
node-inspector是一个基于Blink Developer Tools (formerly WebKit Web Inspector)的nodejs调试工具,项目有ibm旗下的strongloop负责,目前在github上面已经有一万多可星了。我们都知道Blink是chrome的内核,chrome的调试工具强大无比,使用node-inspector我们能把chrome的强大调试工具赋给nodejs使用。
使用方法:
分别安装node-inspector和chrome浏览器
node-inspector建议安装在全局环境下,因为调试这种工作几乎所有的nodejs项目都会需要的。
npm install -g node-inspector
安装后就会有node-debug命令,使用node-debug代替node命令就能调试我们的项目了。

调试界面和调试web项目没有区别。
2. 基于Nodejs内建的调试器
我们开发浏览器应用的时候,很多都是使用手动加debugger标签进行调试,而Nodejs也是支持这种开发形式,在需要调试的地方打上debugger语句,但是启动node的时候一定要加上debug参数,如:
node debug index.js
如果这样书写,node执行到debugger处时候会被挂起,我们可以使用内建命令和表达式的值:
命令有:
| 命令 | 解释 |
|---|---|
| cont, c | 进入下一个断点 |
| next, n | 下一步 |
| step, s | 进入函数 |
| out, o | 跳出函数 |
| setBreakpoint(), sb() | 在当前行设置断点 |
| setBreakpoint(line), sb(line) | 在 line 行设置断点 |
和我们平时调试无差异。
同时提供了可以查看变量值的命令,可以让我们查看变量的值:
watch, unwatch, watchers, repl, restart, kill, list, scripts, breakpoints, version
是不是和其他调试工具一样,只不过是命令行的形式,使用起来不是很方便,但是还是可以满足需求。
3.使用webstorm调试
我们还是习惯在编辑器中调试我们的程序,如今如webstorm这种编辑器都自带调试工具,这大大简化了node应用的开发,具体使用方法如下。首先先给js文件配置node应用,如


配置后在上边的调试工具就会变为可用,点击那个小虫子的按钮就可以调试node了,下边的页签也会都一个调试工具,可用看见局部变量,使用起来非常方便。

几种方法综合来看,使用webstorm调试是最简单容易的方法。
参考:
http://www.aichengxu.com/javascript/9844636.htm
nodejs调试总结的更多相关文章
- nodejs 调试 node-inspector包
nodejs 调试调试比较麻烦,让习惯了用chrome浏览器调试的前端同学来说有点不适用 node-inspector这个包让我们可以在chrome上像调试前端代码一样来调试nodejs 1.全局 ...
- nodejs 学习二, nodejs调试
nodejs 调试,在官方文档(英文),常用的两种: 一个在chrome安装插件inspector 第二种利用编辑 这里我使用vscode编辑来调试. 主要是配置 launch.json(用vscod ...
- nodejs调试基础【转载】
nodejs调试基础[转载] 看到了一片不错的文章: 作者:前端求生之路 链接:nodejs调试基础[转载]
- 开始学nodejs —— 调试篇
新学习一种技术,肯定会遇到很多坑,我们需要找到这些坑,弄清楚这些坑出现的原因和其中的原理.这种操作就叫做调试. 程序调试的方法和工具多种多样,在这里我总结一下我在学习nodejs的过程中,学到的和用到 ...
- 欲善其功,必先利其器--Nodejs调试技术总结
调试技术与开发技术构成了软件开发的基石.目前Nodejs作为新型的Web Server开发栈倍受开发者关注.总的来说Nodejs的应用程序主要有两部分:JavaScript编写的js模块和C语言编译的 ...
- supervisor提高nodejs调试效率
1.NodeJS环境安装 2.安装supervisor npm install supervisor -g (表示安装到全局路径下) 开发nodejs程序,调试的时候,无论你修改了代码的哪一部分,都 ...
- Nodejs调试技术总结
调试技术与开发技术构成了软件开发的基石.目前Nodejs作为新型的Web Server开发栈倍受开发者关注.总的来说Nodejs的应用程序主要有两部分:JavaScript编写的js模块和C语言编译的 ...
- Nodejs 调试方法
nodejs内部提供一个debug机制,可以让程序进入debug模式,供开发者一步一步分析代码发现问题. 共有3中启动参数可以让程序进入debug模式,假设我们要对app.js进行调试. node d ...
- nodejs调试:node-inspector
基于Chrome浏览器的调试器 既然我们可以通过V8的调试插件来调试,那是否也可以借用Chrome浏览器的JavaScript调试器来调试呢?node-inspector模块提供了这样一种可能.我们需 ...
随机推荐
- 关于 preHandle 重写和添加参数问题,重写HttpServletRequestWrapper和Filter
由于 preHandle 中HttpServletRequest 只有setAttribute而没有setParameter 也没有 add 方法 所以是没办法直接添加参数的.从网上查了很多资料,基本 ...
- linux 目录详解
/bin bin是binary的缩写.这个目录沿袭了UNIX系统的结构,存放着使用者最经常使用的命令.例如cp.ls.cat,等等. /boot 这里存放的是启动Linux时使用的一些核心文件. /d ...
- openlayers渲染mapbox gl的vector tile
准备条件 https://openlayers.org/en/v4.6.5/build/ol.js https://cdn.polyfill.io/v2/polyfill.min.js DEMO &l ...
- 客户端用TortoiseSVN检出代码
在桌面空白处右键选择SVN检出,如图: 在弹出的对话框中填写服务端版本库的URL (URL获取方式在前面一章中介绍过)选择检出目录点击确定,如图: 开始检出项目,如图: 检出完成之后打开副本,即可看到 ...
- 什么是IPFS?(三)
前两篇介绍了IPFS的基本概念, 那么IPFS都可以用来做什么? 如果你认为仅仅是CDN, 永久的web? Are you kidding me ? IPFS可是要 --改变世界的... --变世界的 ...
- python中干掉tornado的连接失败日志
用了tornado真的是比较舒服,很多事都为你做好了. 但也有不令人满意的地方--对于我这个洁癖来说,自动给我的控制台打印不受我控制的信息是不能忍受的. 连接到一个新的地方,如果失败,tornado会 ...
- 搭建一套完整的Mysql5.7innodbcluster(GroupReplication+mysqlrouter)
先说三个大步骤: 搭Mysql5.7 Group Replication ,配置成单主模式 安装Mysqlshell,配innodbcluster 安装Mysql-router 第一步:搭Mysql5 ...
- 18.C++-[ ]操作符使用 、函数对象与普通函数区别(详解)
在上章17.C++-string字符串类(详解)学习了string类,发现可以通过[ ]重载操作符来访问每个字符. 比如: string s="SAD"; for(int i=0, ...
- RabbitMQ 消息确认与公平调度消费者
一.消息确认 为了确保消息一定被消费者处理,rabbitMQ提供了消息确认功能,就是在消费者处理完任务之后,就给服务器一个回馈,服务器就会将该消息删除,如果消费者超时不回馈,那么服务器将就将该消息重新 ...
- react 实用的性能优化方式
react 组件渲染分为初始化渲染和更新渲染,当我们更新某个组件的时候,只是想关键路径上组件的render,但react的默认做法是调用所以组件的reder,再生成虚拟dom进行对比,如不变则不进行更 ...