Node.js的调试

Node.js 的调试

1 命令行调试

Node.js支持命令行下的单步调试,在当前js文件夹下打开命令窗口,执行node debug debug.js,将会启动debug.js的调试工具。

调试下面的名为debug.js的js文件

var a = 'hello debug';
var b = 'hello world ';
var c = function(x,y){
    console.log(x+y);
};
c(a,b);

在命令行窗口中输入node debug debug.js,就打开了一个调试终端。

H:\nodejsStudyDemo\oneDay>node debug debug.js
< Debugger listening on port 5858
connecting to 127.0.0.1:5858 ... ok
break in H:\nodejsStudyDemo\oneDay\debug.js:2
  0 (function (exports, require, module, __filename, __dirname) {
  1
> 2 var b = 'hello world ';
  3 var c = function(x,y){
  4     console.log(x+y);
debug>

在这个调试终端中我们还可以用一些基本的命令进行单步跟踪调试。参见下表。

命令功能
run执行脚本,在第一行暂停
restart重新执行脚本
cont,c继续执行,直到遇到下一个断点
next,n单步执行
step,s单步执行,并进入函数
out,o从函数中步出
setBreakpoint(),sb()在当前行设置断点
setBreakpoint(‘f()’),sb(…)在函数f的第一行设置断点
setBreakpoint(‘debug.js’,5),sb(…)在debug.js的5行设置断点
clearBreakpoint,cb(…)清除所有断点
backtrace,bt显示当前调用栈
list(5)显示当前执行到的前后五行代码
watch(expr)把表达式expr加入监视列表
unwatch(expr)把表达式从监视列表移除
watchers显示监视列表中所有的表达式和值
repl在当前上下文打开及时求值环境
kill中止执行当前执行的脚本
scripts显示当前已加载的所有脚本
version显示V8版本

2 远程调试

V8提供的调试功能是基于TCP协议的,所以Node.js可以使用远程调试。
在命令行下使用以下两个语句可以打来调试服务器:

node --debug[=port] debug.js
node --debug-brk[=port] debug.js

3 Eclipse 调试Node.js

4 node-inspector调试Node.js

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值