iis服务器助手广告广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >JavaScript中如何在一个循环中等待示例代码详解
  • 960
分享到

JavaScript中如何在一个循环中等待示例代码详解

2024-04-02 19:04:59 960人浏览 八月长安
摘要

下面是如何使用for..of 循环来迭代一个数组并在循环内等待: const fun = (prop) => { return new Promise(resolve =&

下面是如何使用for..of 循环来迭代一个数组并在循环内等待:

const fun = (prop) => {
  return new Promise(resolve => {
    setTimeout(() =>
      resolve(`done ${prop}`), 1000);
  })
}

const Go = async () => {
  const list = [1, 2, 3]
	
  for (const prop of list) {
    console.log(prop)
    console.log(await fun(prop))
  }
  
  console.log('done all')
}

go()

你需要把循环放在一个异步函数中,然后你可以使用await ,循环会停止迭代,直到我们正在等待的承诺得到解决。

你可以用for...in循环做同样的事情,对一个对象进行迭代:

const fun = (prop) => {
  return new Promise(resolve => {
    setTimeout(() =>
      resolve(`done ${prop}`), 1000);
  })
}
const go = async () => {
  const obj = { a: 1, b: 2, c: 3 };

  for (const prop in obj) {
    console.log(prop)
    console.log(await fun(prop))
  }
  
  console.log('done all')
}

go()

你也可以使用whiledo..whilefor 循环,也是这种结构。

但是你不能用Array.forEach()Array.map() 来等待。

到此这篇关于在javascript中如何在一个循环中等待(附代码示例)的文章就介绍到这了,更多相关js循环等待内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: JavaScript中如何在一个循环中等待示例代码详解

本文链接: https://www.lsjlt.com/news/165901.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JavaScript中如何在一个循环中等待示例代码详解
    下面是如何使用for..of 循环来迭代一个数组并在循环内等待: const fun = (prop) => { return new Promise(resolve =&...
    99+
    2024-04-02
  • 6个实例,8段代码,详解 Python 中的 For 循环
    Python 支持for循环,它的语法与其他语言(如JavaScript 或Java)稍有不同。下面的代码块演示如何在Python中使用for循环来遍历列表中的元素:上述的代码段是将三个字母分行打印的。你可以通过在print语句的后面添加逗...
    99+
    2023-05-14
    Python for 循环
  • 如何在Vue中循环一个范围
    这篇文章主要为大家展示了“如何在Vue中循环一个范围”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何在Vue中循环一个范围”这篇文章吧。在 Vue 中循环一个范围v-for指令允许我们遍历一个...
    99+
    2023-06-27
  • Golang迭代如何在Go中循环数据结构使用详解
    目录引言如何在Go中循环字符串如何在Go中循环map结构如何在Go中循环Struct结论引言 数组是存储类似类型数据的强大数据结构。您可以通过索引识别和访问其中的元素。 在Golan...
    99+
    2024-04-02
  • Android在一个app中安装并卸载另一个app的示例代码
    Android在一个app中安装并卸载另一个app 1.在app→src→main下新建文件夹asserts,将准备安装的apk文件放在asserts内 2.在app→src→mai...
    99+
    2024-04-02
  • 详解如何在Go语言中循环数据结构
    目录如何在Go中循环字符串如何在Go中循环map结构如何在Go中循环Struct数组是存储类似类型数据的强大数据结构。您可以通过索引识别和访问其中的元素。 在Golang中,您可以通...
    99+
    2024-04-02
  • 详解Python如何在多层循环中使用break/continue
    关于break/continue这两个关键字在平常的使用过程中一直比较迷糊。好不容易理解了吧,过段时间不使用好像忘记了什么。这个问题也是很多初学者比较容易提及的问题。 先通过一个简...
    99+
    2024-04-02
  • 如何在JavaScript中运行.NET Core代码详情
    目录一、前言二、DotNetJS三、Demo1. 创建项目2. 实现C#代码3. 实现JS代码4. 运行效果四、结论一、前言 在.NET Core中运行JavaScript代码,目前...
    99+
    2024-04-02
  • 如何在Android应用中实现一个无限循环轮播
    如何在Android应用中实现一个无限循环轮播?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。一、自定义控件属性新建自定义控件SliderLayout继承于Rel...
    99+
    2023-05-31
    android roi
  • 如何在Android中利用ListView实现一个内容无限循环显示效果
    这期内容当中小编将会给大家带来有关如何在Android中利用ListView实现一个内容无限循环显示效果,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。其实要达到无限循环显示,主要就是实现继承Adapter...
    99+
    2023-05-31
    android listview roi
  • 如何在Python中隐藏和加密密码示例详解
    目录前言maskpass()安装:askpass():advpass():base64()在输入时间内隐藏用户密码总结前言 有多种 Python 模块用于隐藏用户输入的密码,其中一个...
    99+
    2024-04-02
  • 如何在Android中利用 ViewPager实现一个循环播放功能
    这篇文章将为大家详细讲解有关如何在Android中利用 ViewPager实现一个循环播放功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.初始化布局我们先来写一个ViewPager广告...
    99+
    2023-05-31
    android viewpager age
  • 如何在PHP中使用数组(附代码示例)
    数组是在一个共同的名称下分组的值的列表。你可以用两种不同的方式定义一个空数组:$list = [];$list = array();数组可以用值进行初始化:$list = [1,&...
    99+
    2024-02-29
    PHP数组 数组
  • 在PyCharm中中写 Turtle代码没提示如何解决
    本篇文章为大家展示了在PyCharm中中写 Turtle代码没提示如何解决,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。PyCharm 中在使用Turtle(海龟)库绘图体系时,代码明明是正确可以运...
    99+
    2023-06-06
  • c# 在Emit代码中如何await一个异步方法
    目录0. 前言Demo 说明1. ContinueWith2. GetAwaiter().GetResult()3. async/await完整Demo放在0. 前言 首先立马解释...
    99+
    2024-04-02
  • 如何在vue中解决提示警告for循环报错的问题
    这篇文章将为大家详细讲解有关如何在vue中解决提示警告for循环报错的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。警告1.出现这个警告问题的时候 我们可以去main...
    99+
    2024-04-02
  • 如何用前端代码在浏览器中构建一个Tableau
    如何用前端代码在浏览器中构建一个Tableau,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在Gartner最新的对商务智能软件的专业分析报告中,Tableau持续领跑。Mic...
    99+
    2023-06-19
  • 如何在android中制作一个方向轮盘详解
    目录先上效果图原理很简单,其实就是一个自定义的view计算滑块位置的原理:通用性很好的接口:小技巧:代码部分写在最后:先上效果图 原理很简单,其实就是一个自定义的view 通过观察...
    99+
    2024-04-02
  • 如何在PyQt5中使用QListView实现一个代码高亮功能
    今天就跟大家聊聊有关如何在PyQt5中使用QListView实现一个代码高亮功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用setCurrentIndex(int) 来设置if...
    99+
    2023-06-14
  • gitlab中代码只上传了一个文件夹如何解决
    这篇文章主要讲解了“gitlab中代码只上传了一个文件夹如何解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“gitlab中代码只上传了一个文件夹如何解决”吧!一、检查.gitignore文...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作