- 问题描述
有两个函数f1和f2,其中f1中有异步操作,执行完f1接着执行f2,因为f1内部有异步操作,所以会先执行完f2,再执行f1里的异步,如何等待f1异步执行完再执行f2.
备注:执行方式为f1();f2();不想在f1和f2外部包含promise.
- 代码
const f1 = async () => {
const p = new Promise((resolv, reject) => {
setTimeout(() => {
console.log('我是异步')
resolv('resolv')
}, 2000);
})
let res = await p;
console.log("res", res);
}
const f2 = () => {
console.log('我是f2')
}
f1();
f2();
// 打印结果如下
// 我是f2
// 我是异步
// res reslve
- 想要的结果,打印输出如下
我是异步
res reslve
我是f2
f2要求在f1中的异步函数执行完毕后执行### 问题描述
问题出现的环境背景及自己尝试过哪些方法
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
await f1()
f2()
? 多理解啊。。