了解windows下Node.js的调试

首先写一个简单的程序,test.js:

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

方法一、命令行下的单步调试

在命令行下执行node debug test.js将会启动调试工具


以下是一些基本的命令进行单步跟踪调试:

run          执行脚本,在第一行暂停

restart    重新执行脚本

cont,c 继续执行,直到遇到下一个断点

next,n 单步执行

step,s 单步执行并进入函数

out,o 从函数中步出

setBreakpoint(),sb()在当前行设置断点

setBreakpoint('f()',sb(...))在函数f的第一行设置断点

setBreakpoint('script.js',20),sb(...)在script.js的第20行设置断点

clearBreakpoint,cb(...)清除所有断点

breaktrace,bt显示当前的调用栈

list(5) 显示当前执行到的前后5行代码

watch(expr)把表达式expr加入监事列表

unwatche(expr)把表达式expr从监事列表移除

watchers 显示监视列表中所有的表达式和值

repl 在当前上下文打开即时求值环境

kill 终止当前执行的脚本

scripts 显示当前已加载的所有脚本

version 显示V8的版本

方法二、远程调试

V8提供的调试功能是基于TCP协议的,因此Node.js可以轻松地实现远程调试。在命令行下使用以下两个语句之一可以打开调试服务器:

node --debug[port] XXX.js 可以启动调试服务器, 默认情况下调试端口是5858

node --debug-brk[port] XXX.js默认端口1234

node -debug和node -debug -brk区别:前者运行脚本时,脚本会正常执行但不会暂停,在执行过程中调试客户端可以连接到调试服务器。如果要执行脚本暂停执行等待客户端连接,则应该使用后者。这时调试服务器在启动后会立刻暂停执行脚本,等待调试客户端连接。

当调试服务器启动以后,可以用命令行调试工具作为调试客户端连接,例如:

cmd进入到存放test.js的目录,在一个终端中运行node --debug-brk debug.js


在另外一个终端中运行node debug 127.0.0.1:5858


实际上,当使用node debug test.js名调试时,只不过将以上两个步骤工作自动完成了而已。

方法三:使用node-inspector调试Node.js

(1)使用npm install -g node-inspector命令安装node--inspector

(2)然后在终端通过node --debug-brk=5858 test.js命令连接你要除错的脚本的调试服务器,再启动node-inspector

(3)在浏览器中打开http://127.0.0.1:8080/debug?port=5858







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值