【发布时间】:2020-03-30 21:09:35
【问题描述】:
想象一下下面的 JavaScript:
async function f(x)
{
var d = await NetworkRequest(x);
d.ProcessResponse();
}
async function g()
{
f(x);
// Is network io completed now?
}
NetworkRequest 是一个真正的异步函数,一个异步完成的函数。问题 - 到 f() 返回时,是否可以确定 ProcessResponse 已完成?
如果g 没有被声明为异步怎么办 - 会有什么不同吗?
【问题讨论】:
-
所有异步函数都会发生同样的事情,无论它们是否有返回值。 现在你会得到一个 Promise,但它会在 稍后完成。只是它是一个无效的承诺,但仍然是一个承诺。
标签: javascript asynchronous promise async-await