前端那些事情Web前端之路程序员

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

2017-02-22  本文已影响20人  幺加幺

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

解析:

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

上一篇 下一篇

猜你喜欢

热点阅读