1、安装调式工具

打开命令行工具,输入以下内容,然后回车。

npm install -g node-inspector

等待安装成功呢后,我们就可以使用

node-debug 文件名

这个命令来调式我们的node程序了。

2、开始调式

假如当前目录下有这么一段名叫hello.js的源码

//载入http模块
var http = require('http');
//构建一个http服务器
var server = http.createServer(function(request,response){
response.writeHead(200,{'Content-Type':'text/plain'});
response.write('Hello World!');
response.end();
});
//启动http服务器,并开始侦听3000端口号
server.listen(3000);
//在控制台打印日志
console.log('Server running at http://127.0.0.1:3000');

我们输入如下命令

node-debug hello.js
等待一段时间后,将自动打开如下界面,这样我们就可以开始调式了

3、简单说明

程序自动暂停在module.js这个文件内,这个文件是node.js的库文件。我们点一下左边的hello.js

在中间就显示了hello.js的源码,我们在行号上点一下就可以加入断点了,再点一下调式命令面板中的最左变的按钮或者按F8就可以让程序继续执行,之后程序就在我们设置的断点停下来,再按F10就可以单步运行调式。

当程序暂停后,可以把鼠标放到变量上,会直接显示变量的内容。

比如上图,将鼠标放到“__filename”,会显示“E:\\DevApp\nodejs\test\helo.js”,也就是我们要调式的源码文件。

4、额外说明

当node.js执行我们写的模块(hello.js)时,会自动的把我们的源码加载到一个匿名函数中

(function (exports, require, module, __filename, __dirname) {
//我们写的源码将被载入到这里
});

像我们程序中用到的 require函数,其实就是这个匿名函数的第二个参数,其他的参数我们在后续的文章会讲到。

node.js入门(三)调式的更多相关文章

  1. Node.js入门实例程序

    在使用Node.js创建实际“Hello, World!”应用程序之前,让我们看看Node.js的应用程序的部分.Node.js应用程序由以下三个重要组成部分: 导入需要模块: 我们使用require ...

  2. 极简 Node.js 入门 - 1.4 NPM & package.json

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  3. 极简 Node.js 入门 - 2.2 事件

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  4. 极简 Node.js 入门 - 3.2 文件读取

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  5. 极简 Node.js 入门 - 4.2 初识 stream

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  6. 极简 Node.js 入门 - 4.4 可写流

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  7. 极简 Node.js 入门 - 4.5 双工流

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  8. Node.js 入门手册:那些最流行的 Web 开发框架

    这篇文章与大家分享最流行的 Node.js Web 开发框架.Node 是一个服务器端 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用程序,编 ...

  9. 【特别推荐】Node.js 入门教程和学习资源汇总

    这篇文章与大家分享一批很有用的 Node.js 入门教程和学习资源.Node 是一个服务器端的 JavaScript 解释器,它将改变服务器应该如何工作的概念.它的目标是帮助程序员构建高度可伸缩的应用 ...

  10. 让我们一起学习《Node.js入门》一书吧!

    Node.js入门 读完本书之后,你将完成一个完整的web应用,该应用允许用户浏览页面以及上传文件. 里面对一些知识的讲解,让你略窥Node.js的门径.最好一段代码一段代码的写下来,我的习惯是手里拿 ...

随机推荐

  1. SQLSERVER和sybase的差异

    sybase sqlserver *= left join =* right join

  2. android 开发环境搭建 (转)

    最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是一直没有搭建开发环 境去学习,Android的更新速度比较快了,Android1 ...

  3. 三大主流ETL工具选型

    ETL(extract, transform and load)产品乍看起来似乎并不起眼,单就此项技术本身而言,几乎也没什么特别深奥之处,但是在实际项目中,却常常在这个环节耗费太多的人力,而在后续的维 ...

  4. 浅谈localStorage本地存储

    在年会的抽奖程序中用到了localStorage现在拿出来总结下,localStorage的相关用法. 在年会抽奖的程序中,需要把获奖名单存储下来,年会现场没有网络,能最简单实现数据存储的方式就是,将 ...

  5. Wireless Network(POJ 2236)

    Wireless Network Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 20724   Accepted: 871 ...

  6. angularJS常用命令

    首先使用命令行进入你要编辑的web项目目录下: (一)编译浏览项目 1:grunt build    对web项目编译: 2:grunt server    装载(在浏览器上查看页面): 3:ctrl ...

  7. Typecho 代码阅读笔记(一) - 页面渲染及路由机制

    转载请注明出处:http://blog.csdn.net/jh_zzz 从 index.php 开始看, /** 初始化组件 */ Typecho_Widget:: widget('Widget_In ...

  8. Socket基础(一)

    OSI七层模型: 物理层:比特,数据链路层:帧,网络层:包,传输层及以上:报文.因为不用,不做详解. TCP/IP模型:这个常用,详解. 链路层:负责在两个相邻节点上线路上的无差错传输数据,以帧为单位 ...

  9. Linux下ld搜索问题:ld: cannot find -l"XX"

    ld命令行工具(链接库的一个工具)的搜索路径是-L指定的,库名是-l指定的. 比如: ld -L[dir] -l[mylib] --verbose 以上我用可视化的方法显示ld的搜索路径,其结果是居然 ...

  10. Android消息机制不完全解析(上)

        Handler和Message是Android开发者常用的两个API,我一直对于它的内部实现比较好奇,所以用空闲的时间,阅读了一下他们的源码.    相关的Java Class: androi ...