async function A() {
let someData = await B();
return someData;
}
async function B() {
let someData = await C();
//Some logic code
return someResult;
}
async function C() {
return new Promise();
}
A();
上面实例的,只有 C 是异步的,B 在调用 C 同步执行的时候,B 必须是异步函数。而 A()在调用 B 时需要 B 通过 C 的返回经过 B 的某些计算,再返回给 A,因此调用 B 的时候也要是同步的。想要让 B 同步,A 就必须是异步函数。
这样的话岂不是想要用 await,上层所有函数都必须是异步函数?