首页 > 解决方案 > 为什么“await”总是需要在“async”函数中使用

问题描述

起初我一直想知道 await 有什么作用,随着经验的积累,我慢慢开始理解为什么,但是在我开始测试需要等待的 api(mathjs)之后,我有一个问题。为什么“等待”总是需要“异步”?

我的意思是为什么我们不能单独使用 await 例如每当 javascript 看到这个

const result = await justa.functiOn()

它会这样读:

async function t(){
const result = await justa.functiOn()
}
t()

这将很有用,可以节省时间和错误。

我不需要答案来修复我遇到的错误,而只是为了了解更多的javascript,因为我一直在搜索许多网站,但没有任何帮助我理解.. 他们只是重复等待需要'异步';-;

而且我知道我可以只使用一个将所有内容结合在一起的异步函数。同样,我不是试图解决问题/错误,但我仍然很好奇为什么我们不能在没有异步的情况下单独使用 await。

标签: javascriptnode.jsasync-await

解决方案


为什么“等待”总是需要“异步”?

这是因为如果您能够将 await 放入同步代码中,您将阻塞(主)线程。

async之前和await关键字已经可以做到这一点。

你可以简单地解决一个承诺。异步函数会返回这样的承诺。


推荐阅读