首先,我不完全确定这是否是解决我遇到的问题的正确方法,但它就在这里。
我有两个数组
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] 删除。
我来说两句