javascript - 为什么 "await"总是需要在 "async"函数中使用

标签 javascript node.js async-await

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

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

const result = await justa.functiOn()

它会这样读:

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

这很有用,可以节省时间并减少错误。

我不需要答案来修复我的错误,只是为了了解更多 javascript,因为我一直在许多网站上搜索,但没有任何东西可以帮助我理解。他们只是重复了这一点等待需要“异步”;-;

而且我知道我可以使用一个将所有内容整合在一起的异步函数。再说一遍,我并不是想解决问题/错误,但我仍然很好奇为什么我们不能在没有异步的情况下单独使用等待。

最佳答案

为什么“await”总是需要“async”?

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

这在 asyncawait 关键字之前就已经可以实现。

您可以简单地resolve一个 promise 。异步函数返回这样的 promise 。

关于javascript - 为什么 "await"总是需要在 "async"函数中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63937465/

相关文章:

javascript - Jquery 脚本在 Internet Explorer 中不工作

javascript - 如何在 Angular2 中获得 observable 的响应?

javascript - 为什么将数组插入另一个数组会合并元素而不是将它们放入单独的数组中

node.js - 用于 Nodejs 的简单 aws-sdk 不起作用

node.js - 如何使用 Node Express 访问 "async all the way down"?

rust - 使用 Tokio 0.2 生成非静态 future

javascript - 将表单发布到 IFrame 后取消发布请求

javascript - BotFramework V4 Nodejs 中的自适应卡(用户输入表单)在用户提交后重新提示

javascript - AJAX url路径问题

javascript - 如何在函数内等待事件监听器?