gpt4 book ai didi

javascript - Typescript 中的 Json 形成(Angular 7)

转载 作者:行者123 更新时间:2023-12-02 23:38:43 25 4
gpt4 key购买 nike

我有一个嵌套的 json,如下所示。

{
card:[{
id:1;
details:[{id:1},{id:2}],
sheet:{
id:1
}
},{
id:2;
details:[{id:3},{id:4}],
sheet:{
id:1
}
}
]
}
<小时/>

我需要根据下面的工作表对详细信息进行分组。

{
sheet:{
id:1,
details:[{id:1},{id:2},{id:3},{id:4}]
}
}
<小时/>

我如何在 typescript 中实现这一目标?

经历了 NPM-groupBy 但我认为它并没有真正解决我的问题。还有其他方法可以做到这一点吗?

最佳答案

如果我理解正确,这将是数组归约方法的一个很好的用例,例如:

const cards = [
{
id: 1,
details: [
{id:1},
{id:2}
],
sheet:{
id:1
}
},
{
id:2,
details: [
{id:3},
{id:4}
],
sheet:{
id:1
}
},
{
id:3,
details: [
{id:5},
{id:6}
],
sheet:{
id:2
}
}
];

const sheets = cards.reduce( (sheets: Array<any>, card: any) => {
const existingSheet = sheets.find(sheet => card.sheet.id === sheet.id);
if (existingSheet) {
existingSheet.details.concat(card.details);
} else {
sheets.push({id: card.sheet.id, details: card.details});
}
return sheets;
}, []
);

console.log(sheets);

关于javascript - Typescript 中的 Json 形成(Angular 7),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56179465/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com