Node.js学习-----------异步文件读取
2015-06-28 23:18
666 查看
Node.js中最大的特点就是异步式I/O与事件紧密结合的编程模式。控制流程要通过事件和回调函数来组织,一个逻辑要拆分成若干个单元。
下面来看个Node.js中异步的方式读取一个文件:
var fs = require('fs');
fs.readFile('file.txt' , 'utf-8' , function (err , data) {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
console.log('end.');
首先是导入文件包,然后在读文件,其中有三个参数,文件名,编码方式,回调函数,在回调函数中完成内容的输出或者是错误信息的输出。
在上面的代码执行中可以发现,具体执行是先执行下面的控制台输出,而后再执行的上面的读取文件,为什么会这样呢?
fs.readFile调用后所做的工作只是将异步I/O请求发送给了操作系统,然后立即返回并执行后面的操作,执行完以后进入循环监听时间,当fs接受到I/O请求完成 时间时,时间循环会主动调用回调函数以完成后续工作。
在Node.js并不鼓励使用同步I/O
下面来看个Node.js中异步的方式读取一个文件:
var fs = require('fs');
fs.readFile('file.txt' , 'utf-8' , function (err , data) {
if (err) {
console.error(err);
} else {
console.log(data);
}
});
console.log('end.');
首先是导入文件包,然后在读文件,其中有三个参数,文件名,编码方式,回调函数,在回调函数中完成内容的输出或者是错误信息的输出。
在上面的代码执行中可以发现,具体执行是先执行下面的控制台输出,而后再执行的上面的读取文件,为什么会这样呢?
fs.readFile调用后所做的工作只是将异步I/O请求发送给了操作系统,然后立即返回并执行后面的操作,执行完以后进入循环监听时间,当fs接受到I/O请求完成 时间时,时间循环会主动调用回调函数以完成后续工作。
在Node.js并不鼓励使用同步I/O
相关文章推荐
- 使用 HTTP 上传 G 级的文件之 Node.js 版本
- 异步流程控制:7 行代码学会 co 模块
- node.js中的fs.mkdir方法使用说明
- 为什么Node.js会这么火呢?Node.js流行的原因
- 究竟什么是Node.js?Node.js有什么好处?
- node.js中的http.response.removeHeader方法使用说明
- 浅析Node.js查找字符串功能
- Node.js中require的工作原理浅析
- 运行Node.js的IIS扩展iisnode安装配置笔记
- 使用npm发布Node.JS程序包教程
- node.js中的fs.symlinkSync方法使用说明
- Node.js中的流(Stream)介绍
- 使用node.js 获取客户端信息代码分享
- Windows8下搭建Node.js开发环境教程
- Node.js实现的简易网页抓取功能示例
- Node.js中HTTP模块与事件模块详解
- Node.js中child_process实现多进程
- Node.js中的process.nextTick使用实例
- 优化Node.js Web应用运行速度的10个技巧
- node.js中的socket.io入门实例