同步操作是事件一件件执行,执行完成一件依次往后执行下一件
异步操作是将所有的事件同时进行,导致不能确认哪件事情先执行,可以用promise方法,不会有回调地狱的问题
promise是一个写好的构造函数,直接实例化使用,里面的参数为一个回调函数,函数里面又包含了两个回调函数,一个是成功时执行的resolve函数,一个是失败时执行的reject函数
下面的代码是使用promise 让异步操作进行同步处理
const thenFs = require("then-fs");
thenFs
.readFile("3.txt", "utf-8")
.then((res) => {
console.log(res);
return thenFs.readFile("2.txt", "utf-8");
})
.then((res) => {
console.log(res);
return thenFs.readFile("1.txt", "utf-8");
})
.then((res) => {
console.log(res);
});