Json 当我需要将async/await嵌入javascript中的forEach()时,如何使用它
我知道这不会像我写的那样起作用,我看不到任何解决问题的答案。代码太长,无法放在这里,但我已经包含了一个指向要点的链接 我的问题是: 我得到一个json文件的ID列表,这些文件必须在多个SQL表中读取并转换为行。该列表来自另一个json文件,以ID数组的形式指向我需要读取和转换的文件 根据要求,SQL表中不能有包含冗余数据的行。SQL的ID是自动生成的。API中有3类实体:Json 当我需要将async/await嵌入javascript中的forEach()时,如何使用它,json,promise,async-await,sequelize.js,Json,Promise,Async Await,Sequelize.js,我知道这不会像我写的那样起作用,我看不到任何解决问题的答案。代码太长,无法放在这里,但我已经包含了一个指向要点的链接 我的问题是: 我得到一个json文件的ID列表,这些文件必须在多个SQL表中读取并转换为行。该列表来自另一个json文件,以ID数组的形式指向我需要读取和转换的文件 根据要求,SQL表中不能有包含冗余数据的行。SQL的ID是自动生成的。API中有3类实体: 学习者——参加课程的学生 课程——为学习者提供的培训机会(他们有孩子代表细节) 结果——学习者在特定日期学习课程的交叉点(
- id=5sM5YLnnNMN_1525523468000.json(学习者=daffy@duck.com)
- id=5sM5YLnnNMN_1527517868000.json(学习者=yogi@bear.com)
- id=6tn6zmoono_1530730049000.json(学习者=daffy@duck.com)
- id=6tn6zmoono_1541011649000.json(学习者=foghorn@leghorn.com)
- 3个学员行(如预期)
- 3个课程行(1个是多余的,不允许)
- 4个结果行(如预期)
- 课程和成果的孩子们都按照预期编写
谢谢你的帮助。很抱歉这么冗长。您不能将async/wait与forEach一起使用 原因:因为我们不能在同步函数中使用wait。正如您所看到的,“processArray”是一个异步函数。但是匿名的 我们用于forEach的函数是同步的 您可以使用简单for循环,如下所示
for(question of questions) {
await processCourseDetails(jsonData, question);
}
您可以创建一个自定义函数,使其与forEach一样使用async/await
,
问题描述没有提到async或await,因此不清楚标题与问题的关系。我在代码中使用async/await,如果你看要点,你会看到的。请在问题中发布一段代码。不要依赖于外部主机。这个要点超过250行。你必须至少解释一下要点的哪一部分与标题相关,并指出给你带来麻烦的行号。谢谢。我读过很多文章,但没有这篇。我已经把它做成书签,明天早上我会深入研究它。希望这样做。@doug5solas,好的,当然:)或者,您可以收集所有承诺,然后
Promise.all
。这让承诺并行运行<代码>等待承诺。全部(问题。地图(q=>ProcessCoursedDetails(jsonData,q))@Vivek Doshi:非常感谢。我已经为此绞尽脑汁了一段时间。我阅读了这篇文章,并根据我的情况调整了示例,效果非常好。我所有的结果都如预期。我是一个感恩的新手。
for(question of questions) {
await processCourseDetails(jsonData, question);
}