一个简单问题,带你体会Promise是如何解决异步问题。
一个读取文件的案例,运行环境是node。读取文件的方法是用node内置模块fs里的readFile
,这个方法本身就是一个异步方法,当然它也有同步方法,这里因为用Promise解决问题,就不用同步方法了。
项目目录
├─a.txt
├─b.txt
├─c.txt
├─fs.js
└package.json
a.txt,b.txt,c.txt里的内容均是书写3次文件名,比如
a.txt
aaa
在fs.js文件中书写读取文件代码
fs.readFile("./a.txt", "utf-8", (err, dataStr) => {
if (err) {
console.log("读取失败");
} else {
console.log(dataStr);
}
})
fs.readFile("./b.txt", "utf-8", (err, dataStr) => {
if (err) {
console.log("读取失败");
} else {
console.log(dataStr);
}
})
fs.readFile("./c.txt", "utf-8", (err, dataStr) => {
if (err) {
console.log("读取失败");
} else {
console.log(dataStr);
}
})
这种就是咱们平常写出来的代码,输出结果的顺序完全看
任务