我可以通过使用promise将同步方法转换为异步方法吗?
例如同步读取文件(是的fs.readFile,有回调):
// Synchronous read
var data = fs.readFileSync('input.txt');
Run Code Online (Sandbox Code Playgroud)
我应该这样做吗?
function readFileAsync(){
return new Promise((resolve, reject) => {
try {
resolve(fs.readFileSync('input.txt'));
} catch(err) {
reject(err);
}
})
}
Run Code Online (Sandbox Code Playgroud)
或使用异步/等待:
function async readFileAsync(){
try {
let result = await fs.readFileSync('input.txt');
return result;
} catch(err) {
return err;
}
})
}
Run Code Online (Sandbox Code Playgroud)