Node.JS学习笔记二

1.在node中,Buffer类是随着node内核一起发布的核心库。Buffer库为Node.JS 带来了一种存储原始数据的方法,可以让Node处理二进制的数据。几个Buffer模块常用的方法如下:

①new Buffer(size);new Buffer(buffer);new Buffer(str,codetype);

②buf.length ; buf.write(string...);

③buf.toString() ; buf.toJson() ; buf[index];

④buf.equals(otherbuffer) ; buf.compare(otherbuffer) ; buf.copy() ; buf.slice() ;

2.node中的Stream(流)

①Node中有四种流类型:读流、写流、可读可写流和写入并读流。

var fs = require("fs");

var readStream=fs.creatReadStream("fileName");

②所有的Stream对象都是EventEmitter的实例,常用的事件有:

data:当有数据可读时触发;

end:没有更多的数据可读时触发;

error:在接收和写入过程中发生错误时触发;

finish:所有的数据已经被写入底层系统时触发。

③管道提供了一个输出流到输入流的机制:readStream.pipe(writeStream);可以将多个流组合成一个链式流。

3.模块是node应用程序的基本组成部分,文件和模块是一一对应的。换言之,一个node文件就是一个模块,这个文件可能是JS代码、JSON或者编译过的C/C++扩展。

4.node提供了exports和require两个对象。其中exports是模块公开的接口,require用于从外部获取一个模块的接口,即获取模块的exports对象。

5.创建模块

①exports.apiFunc =function(){};

②function apiFunc(){};module.exports=apiFunc;(个人理解:exports对象被赋值为apiFunc对象);

注意:②相对于①的唯一变化是使用module.exports=apiFunc代替了①的写法。②在外部引用该模块时,其接口对象就是要输出的apiFunc对象本身,而不是原先的exports对象了。

6.Node.JS模块加载

①node模块分为核心模块和文件模块。核心模块:node标准API中提供的模块,可通过require直接获取;文件模块:JavaScript代码、JSON或者C/C++代码(编译好的)。

②加载顺序:

优先加载核心模块;

然后是以路径形式加载的文件模块;

最后既不是核心模块也不是以路径形式表示的模块,则现在当前目录下的node_modules目录中查找该模块是否存在。若不存在,则继续在其父目录的node_modules目录中查找,直到根目录为止。

6.node路由

①我们要为路由提供请求的URL和其他需要的GET和POST参数,随后路由需要根据这些数据来执行相应的代码。

②需要的以上所有数据都会被包含在request对象中,该对象会作为相应的回调函数的第一个参数传递。为了解析这些数据,需要额外的node模块,分别是URL和queryString模块。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值