如何在 JavaScript 的 forEach 循环中使用 async/await?

异步编程如今非常流行,因为它允许我们同时执行多个任务,这有助于提高代码的效率和生产力。
Async/await 是我们用来编写异步代码的利器。在 JavaScript 中,我们通常使用循环技术来遍历数组,forEach 循环便是其中常用的一种。

> 注意:在 JavaScript 中将 INLINECODEcd985623 与 INLINECODE72811e30 循环结合使用可能会有些棘手,因为 forEach 本质上并不支持异步操作。

目录

  • 在 for…of 循环中使用 async/await
  • 结合 Promise.all() 与 map 方法使用

使用 async/awaitfor…of 循环

  • INLINECODE8a81c04e 函数利用 INLINECODEe2d72349 循环对数组进行异步遍历。
  • 我们通过 INLINECODEe4e18240 模拟了一个异步操作,它在 INLINECODEd0ee171f 内部使用了 setTimeout
  • 我们在循环内部使用了 await 关键字,它的作用是暂停执行,直到当前项的异步操作完成为止。
  • 下面提供的代码展示了如何使用 INLINECODE580dfe41 函数对数组 (INLINECODE3cf3f885) 进行异步处理,这允许我们对每一项的异步操作进行受控执行。

示例: 这个示例展示了上述方法的实现。

JavaScript


CODEBLOCK_4759e8c0

输出: 

!javscrip

结合 INLINECODE148449ba 与 INLINECODE7ab50523 使用

  • 在这种方法中,我们创建了一个函数,并在其中构建了一个 Promise。
  • 我们创建了另一个函数并返回一个 Promise。在这个 Promise 中,我们使用 setTimeout() 函数将项目打印到控制台。
  • 之后,我们声明一个数组并将其传递给上面创建的函数。

示例: 这个示例展示了上述方法的实现。

JavaScript


CODEBLOCK_540967ca

输出:

!javscrip2

解释: 由于打印元素存在延迟,为了节省时间,另一个元素 " for " 会在 myArray 的第一个元素 "geeks" 之前打印出来。这表明异步函数是同时运行的。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/27738.html
点赞
0.00 平均评分 (0% 分数) - 0