node 读取文件,以及回调函数

1、异步式读取文件

代码:

//readfile.js
var fs = require('fs');
fs.readFile('test.txt', 'utf-8', function(err, data) {
    if (err) {
        console.error(err);
    } else {
        console.log(data);
    }
});
console.log('end.');

解析:

1.1 引入fs 文件模块
require('fs');
1.2 调用fs模块的readFile 方法
fs.readFile();

**注意:这里要建一个test.txt 文件,否则在执行读取的时候会报找不到该文件
效果如下:

Paste_Image.png

代码解析

这里为什么这里是先打印
end 后再打印
I am a text 呢
因为这是异步式,也就是说,fs.readFile()方法调用完后,还没等完全执行完,程序就跑到了
console.log(‘end’)这句代码,所以后面面读取的内容事件循环会主动调用fs.readFile()是最后打印。
那如果想先打印文件内容,然后载打印end呢。请看接下来下面介绍。

2、同步式读取文件

var fs = require('fs');
var data = fs.readFileSync('test.txt','utf-8');
console.log(data);
console.log('end');

结果:

Paste_Image.png

解析:

这里是等待函数完全执行完,以及返回数据之后,再执行下面的语句,阻塞等待完成后继续执行下面的语句。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容