本文主要是介绍nodejs的await和async,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
例子
const fs = require('fs').promises;async function getFileContent(filePath) {const content = await fs.readFile(filePath, 'utf8'); console.log(content); // 这行会在文件读取完成后执行
}getFileContent('example.txt');
console.log(123); // 这行会立即执行
输出结果:
123
文本内容
关键在于getFileContent是异步函数, await 只是告诉 运行时 在当前异步操作完成之前不要继续执行异步函数内的后续代码,而函数外的同步代码不受影响会继续执行
解析
发散
如果想console.log(123)在文件读取完毕后输出呢?怎么实现?
const fs = require('fs').promises;async function getFileContent(filePath) {const content = await fs.readFile(filePath, 'utf8');console.log(content); // 这行会在文件读取完成后执行
}async function main() {await getFileContent('example.txt'); // 使用 await 等待 getFileContent 完成console.log(123); // 这行会在文件读取完成后执行
}main();
定义一个main的异步函数,同样,main中的wait会告诉运行时,本异步函数内的后续语句需要在await后的语句执行完后执行。
这篇关于nodejs的await和async的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!