javascript - 如何将 JSON.parse 放入 Promise.all?

标签 javascript json promise

我得到这段代码来从 Riot Games League of Legends API 中检索一批比赛:

const matches = await Promise.all(matchlist.matches.map(function(match){
    return qRequest(server, "/match/v3/matches/" + match.gameId);
}));

返回值是一个 JSON 格式的字符串。所以 matches 最终成为一个 JSON 字符串数组。不过,我需要解析 JSON,以便匹配对象数组。

我只是想不通如何将 JSON.parse 放在这里?

最佳答案

可以申请Array#map 匹配

let matches = ... ;
matches = matches.map(json => JSON.parse(json));

或内联调用 JSON.parse:

const matches = await Promise.all(matchlist.matches.map(function(match){
  return qRequest(server, "/match/v3/matches/" + match.gameId)
    .then(json => JSON.parse(json));
}));

关于javascript - 如何将 JSON.parse 放入 Promise.all?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45774788/

相关文章:

javascript - 加载窗口时 innerHTML = 'null' 的解决方法

javascript - 使用python和jQuery跨域阻止

javascript - 延迟链式 promise

javascript - 为什么 Firefox 和 Chromium 之间的 cookie 行为不同?

javascript - 将动态 jquery.qrcode RSS feed 与光滑 slider 集成

ios - 如何从 JsonArray 中获取 NSDictonarys?

javascript - Firebase:Query.on 失败:使用 1 个参数调用。预计至少 2

javascript - 如何在 javascript 中实现异步编程( promise )? javascript 不是 ui 线程环境吗?

javascript - 是否可以监听所有 Ajax 调用?

android - 我该如何解决 - 无法解析符号执行