从数组数组中删除嵌套数组

豪尔赫·格雷罗

首先,我不完全确定这是否是解决我遇到的问题的正确方法,但它就在这里。

我有两个数组

const projects = ["PP", "JJ"]
const issues = ["10000", "10002", "100003"]

对于每个问题,我想创建一个像这样的对象:

{
  "issueTypeId": "10002",
  "projectId": "PP",
  "viewType": "GIC"
}

最后以一组对象结束,例如:

[{
   "issueTypeId": "10002",
   "projectId": "PP",
   "viewType": "GIC"
},
{
   "issueTypeId": "10000",
   "projectId": "PP",
   "viewType": "GIC"
}]

到目前为止,这是我的逻辑

const projects = ["PP", "JJ"]
const issues = ["10000", "10002", "100003"]

const p = issues.map(issue => {
    return projects.map(project => {
        return {issueTypeId: issue, projectId: project, viewType: "GIC"}
    })
})

console.log(p)

但是正如你所看到的,我最后得到了一个数组数组,我很确定这是由于双 .map 逻辑。

1st - 有没有更好的方法来实现我的目标?

第二 - 如果没有,如何删除内部数组并获得一个

谢谢

彼得卡

使用flatMap而不是map. 另外,通过明智地选择变量并使用箭头函数的缩写形式,您可以使用以下内容:

const projects = ["PP", "JJ"],
      issues = ["10000", "10002", "100003"],
      viewType = "GIC",

      p = issues.flatMap(issueTypeId =>
          projects.map(projectId => ({issueTypeId, projectId, viewType}))
      );

console.log(p)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章