任何一门完备的语言技术栈都少不了健壮的调试工具,对于NodeJS平台同样如此,笔者研究了几种调试NodeJS代码的方式,通过对比,还是觉得node-inspector的调试方式比较方便,而且和前端JavaScript代码的调试具有一致的体验,不仅健壮,而且方便。安装完成NodeJS后执行如下指令可以完成node-inspector安装。
>npm install -g node-inspector
node-inspector安装完成以后运行如下指令启动node-inspector。
编辑NodeJS源代码输入如下代码,并将其命名为test.js
var duck = {
duckSinging: function(){
console.log( '嘎嘎嘎' );
}
};
var chicken = {
duckSinging: function(){
console.log( '嘎嘎嘎' );
}
};
var choir = []; // 合唱团
var joinChoir = function( animal ){
if ( animal && typeof animal.duckSinging === 'function' ){
choir.push( animal );
console.log( '恭喜加入合唱团' );
console.log( '合唱团已有成员数量:' + choir.length );
}
};
joinChoir( duck );
joinChoir( chicken );
到test.js文件所在的路径下执行如下指令:
>node --debug-brk test.js
打开Chrome浏览器输入node-inspector提示的地址,就会发现断点已经命中在test.js代码的第一行,至此,我们已经可以单步执行或者全速执行我们的NodeJS代码了,效果图如下,当然我们也可以先设置好断点,然后以node --debug test.js 启动被调试NodeJS代码,并进行调试。
总结
本文完整的总结了使用node-inspector调试NodeJS代码的完整步骤,并配了相关步骤的详细图解,希望对大家有所帮助。值得一提的是使用node-inspector调试NodeJS代码有一个需要注意的地方就是在我们调试集群或者多进程NodeJS代码的时候,我们只能调试打开调试端口的那个进程,如果需要调试其他子进程,就需要找到子进程的监听端口,并挂载浏览器到相应的端口上完成调试工作。