nodeJS教程(二)、nodejs调试

本文介绍两种Node.js调试方法:一是利用内建调试功能,通过在JS文件中添加debugger或使用setBreakpoint()设置断点,配合特定命令进行单步调试、变量监视;二是结合node-inspect与Chrome浏览器,实现更直观的调试体验。文章详细列出调试命令,并指导如何安装和使用node-inspect。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、基于nodejs内建的调试

node.js本身支持调试,在js文件中加上debbuger或者在cmd中通过setBreakpoint()可以添加断点。

要使用nodejs的调试服务,只要在启动命令时加上debug。如:node debug web.js。

这时候输入一些指令就能够单步调试、监视变量。

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

比如web.js文件如下:

var http = require("http");
http.createServer(function(request, response) {
    response.writeHead(200, {'Content-Type': 'text/plain'});
	response.write("111");
	debugger;
	response.end("222");
	debugger;
}).listen(8000);

在上面的命令行输入cont之后会监听服务。客户端打开http://127.0.0.1:8000/后,这时候会进入第一个断点(第6行)。输入repl,就能够查看当前上下文变量。退出repl后,输入cont可以进入下一个断点。

二、内置node-inspect+chrome调试

全局安装node-inspect:npm install -g node-inspect

cmd中输入:node --inspect-brk  文件名。(node --debug现在已经不推荐使用,改成--inspect了)

chrome浏览器打开服务器url后,打开控制台。点击控制台的nodejs图标,就可以打开调试窗口。

或者输入chrome://inspect/#devices,在打开的页面中,找到Remote Target下面的内容:

调试效果如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值