ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

等待承诺..JavaScript 中的 Async 和 Await

2022-10-31 17:34:18  阅读:265  来源: 互联网

标签:javaJDK java 虚拟机 布局 数据 代码 程序 面试 题目


为什么使用 Async 和 Await?

默认情况下,Javascript 同步运行。这意味着每个操作都将等待运行,直到上一个操作完成。例如,运行以下两行代码:

控制台日志记录“你好”和“世界”
将始终在控制台中产生此输出:
世界您好
1号线先行,2号线紧随其后。

但是,有时我们需要代码异步运行。输入:异步并等待!

异步和等待

异步和等待与承诺一起使用。将 async 关键字放在函数之前可确保该函数返回 promise。await 关键字只能在异步函数中使用。await 关键字之后的任何内容都告诉 Javascript 等待,直到 promise 解析并返回其结果。那么我们什么时候可以使用异步和等待呢?

付诸实践

在完成训练营的顶点项目时,我正在帮助一位朋友集思广益,为她的应用程序运行一些可能的方法。她希望用户点击他们有兴趣领养的狗,然后填写领养表格。我们决定让初始点击事件创建一个 post 请求,本质上是加入她的用户和可收养的 pup,然后将用户推送到另一个页面,他们可以在其中输入更多信息。但是,她的 post 函数会在承诺解决之前将用户推送到表单页面,这意味着我们还没有新创建的捐赠表单的 ID,因此无法在我们的 url 中使用该 ID,然后在用户完成表单后再次在我们未来的补丁请求中使用该 ID。为了解决这个问题,我们被引入了异步和等待!

首先,我们在函数中添加了 async 关键字。我们将 fetch 设置为常量 (res),并在 fetch 前面添加了 await 关键字。然后我们声明一个新的常量(data)并将其设置为我们的res.json(),包括await关键字。await 关键字告诉 JavaScript 在解决上一个操作之前不要继续下一个操作。

然后,我们创建了一个恰当地命名为重定向的函数,它将用户推送到他们可以更新其余表单信息的页面。最后,我们使用从承诺中收到的数据调用重定向函数,将其解析为 json。

我们的最终代码:

异步和等待代码

结论

总之,async 和 await 是一个很好的工具,当需要 JavaScript 代码能够异步运行时可以使用。虽然今天我们只看到了一个使用 async 和 await 的很好的例子,但还有许多其他方法可以利用它,我期待将来使用它们。

标签:javaJDK,java,虚拟机,布局,数据,代码,程序,面试,题目
来源:

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有