node中的调试 - debugger和inspector
1.console.log()用于的场景:
-
检查变量或字符串的值
-
记录脚本调用了一个函数
-
记录来自第三方服务的响应
如果想记录错误,可使用console.warn(),它又名为console.error(),这两个方法都会打印到标准错误流中。可使用try...catch...语句进行错误的捕获。
2.使用console.error()是找出错误为何被抛出的轻量级方法。要想探索代码的瓶颈所在或者想快速检测代码的某些部分的性能基准,可使用STDIO模块提供的console.time('标识符')和console.timeEnd(‘标识符’)。这个方法可用来优化代码性能,程序所消耗的时间,注:两者的标识符要相同。
var foo = function() {
console.time('timer1');
var a=3,b=5;
var bar = function() {
var b=7,c=11;
a += b + c;
}
bar();
console.timeEnd('timer1');
};
foo();
结果为:
image3.Node.js的调试器 debugger
使用方法:
在程序中添加断点:在行中添加debugger;
运行程序的方式是:在执行命令中添加debug:例如:node debug debug.js
程序实例:
image运行程序:
image命令说明:
首先在执行命令中添加debug,如node debug debug.js;首先执行cont,进入第一个断点,然后运行命令repl,后就可以对变量的值进行查询;
然后可使用ctrl+c, 退出此次的查询,然后在用cont,进入下一个断点,输入repl,依然可以查询第二个断点之前的变量的值,然后依次类推,进入到程序结束。
image4.Node inspector
调试Node.js应用程序最为有用的工具就是Node Inspector。这个第三方工具是由dannycoates (Danny Coates)所创建。
所需要的测试条件为:Webkit内核的浏览器(如:Chrome或者Safari).
作用:Node Inspector让我们可以使用Webkit Javascript调试器来按步来执行代码.
功能:
-
浏览应用程序的源代码
-
使用终端来与应用程序交互
-
添加或移除断点
-
按步执行代码中的函数调用
-
步入,步出函数
-
设置观察表达式
-
查看代码中不同点上的堆栈踪迹
-
查看作用域变量
在计算机上安装Node Inspector:
npm install -g node-inspector
启动Node Inspector的过程分为两部分:
首先,在命令窗口,如:cmd,使用--debug 或者--debug-brk标志启动应用程序,以便启用Javascript调试器。如果使用--debug-brk,那么Node Inspector会在应用程序的第一行位置放置一个断点。注意要想开始调试的话,就需要按play来跳到你设置的第一个断点上。
node --debug-brk debug.js
image
最后,在另外的一个终端选项卡中,如cmd窗口,运行如下命令:
node-inspector
如果成功,会输出一行信息,如:
image