当前位置: 首页 > article >正文

循环中存在异步的情况如何让其正常执行?

最近写后端遇到一个情况,循环查询数据库,并且还需要校验数据是否正确。如下我需要对文件进行一个校验,并且要查询数据库中是否有文件相关的信息代码如下

async function getData(files){
    files.forEach(item=>{
        let info = await getData(item)
        if(info){
            // ...获取到之后进行各种操作
        }
    })
}

起初我的想法是item前面加个async,虽然它没有报错,但确实没有暂停循环。它并不会去等待getData执行完。

最终解决方式是用for of循环来处理。代码如下:

async function getData(files){
    for(const item of files){
        let info = await getData(item)
        if(info){
            // ...获取到之后进行各种操作
        }
    }
}


http://www.kler.cn/news/161985.html

相关文章:

  • 突破浅水、低流速,中海达iFlow系列智能型ADCP创新“低”!
  • Module build failed : Error : Vue packages version mismatch:
  • C#中的Attributes特性创建和结合反射应用举例
  • 苏宁商家电话采集软件使用教程
  • 生活、工作常用API免费接口
  • python socket编程6 - 使用PyQt6 开发UI界面实现TCP server和TCP client单机通讯的例子
  • 神经网络常用归一化和正则化方法解析(二)
  • axios调接口传参特殊字符丢失的问题(encodeURI 和 encodeURIComponent)
  • 【学习笔记】python仅拷贝list的值,引出浅拷贝与深拷贝
  • 在Python中,*f和**f是用于解包参数的语法
  • linux安装mysql5.7(一遍过)
  • 案例060:基于微信小程序考试系统
  • Java 简易版 UDP 多人聊天室
  • ThinkPHP插件开发实例
  • vue 使用 h函数
  • 区块链optimism主网节点搭建
  • 2024年值得关注的8个未来数据库
  • 什么是https 加密协议?
  • Javaweb之Maven仓库的详细解析
  • RPC 集群,gRPC 广播和组播
  • ELK架构监控MySQL慢日志
  • git-vscode
  • ubuntu20.04设置开机自启动jar(依赖其他服务)
  • 简单介绍一些其他的树
  • 阿里云 ACR 制品中心 AI/大数据镜像专场上新推荐榜
  • 【教程】逻辑回归怎么做多分类
  • 转转闲鱼链接后台搭建教程+完整版源码
  • 上海市青少年算法2022年10月月赛(乙组)
  • 【BUG】SpringBoot项目Long类型数据返回前端精度丢失问题
  • 论文分享 | 基于机载单目视觉的四旋翼无人机群内相对定位