javascript - 为什么“await”总是需要在“async”函数中使用
问题描述
起初我一直想知道 await 有什么作用,随着经验的积累,我慢慢开始理解为什么,但是在我开始测试需要等待的 api(mathjs)之后,我有一个问题。为什么“等待”总是需要“异步”?
我的意思是为什么我们不能单独使用 await 例如每当 javascript 看到这个
const result = await justa.functiOn()
它会这样读:
async function t(){
const result = await justa.functiOn()
}
t()
这将很有用,可以节省时间和错误。
我不需要答案来修复我遇到的错误,而只是为了了解更多的javascript,因为我一直在搜索许多网站,但没有任何帮助我理解.. 他们只是重复等待需要'异步';-;
而且我知道我可以只使用一个将所有内容结合在一起的异步函数。同样,我不是试图解决问题/错误,但我仍然很好奇为什么我们不能在没有异步的情况下单独使用 await。
解决方案
为什么“等待”总是需要“异步”?
这是因为如果您能够将 await 放入同步代码中,您将阻塞(主)线程。
async
之前和await
关键字已经可以做到这一点。
你可以简单地解决一个承诺。异步函数会返回这样的承诺。
推荐阅读
- java - 返回 HtmlUnit 历史
- winapi - 如何使用 WMI 获取 GPU 信息?
- vue.js - 使用 HTML5 历史 API 时如何启用离线支持
- mysql - #1932 - 引擎中不存在表
- ruby - Chef12 到 Chef13 升级中的路径问题
- jquery - 单击元素后停止函数运行
- stanford-nlp - 如何为斯坦福关系提取器生成自定义训练模型
- ios - 我可以制作一个可以阻止某些 IOS 功能的 IOS 应用程序吗?
- corda - 任务“:java-source:deployNodes”执行失败。(安装 Corda)。有什么建议么?
- lucene.net - Lucene.net 搜索不返回名称