如何在typescript react中迭代数组到另一个结果组合

plicqrtu  于 2023-06-07  发布在  TypeScript
关注(0)|答案(1)|浏览(172)

我有下面的JSON内容,我需要提取县,并列出了个别县和Map颜色

{
  "state": "Area1",
  "counties": [
    "County1",
    "County2",
  ],
  "mapColor": "Yellow"
},
{
  "wda": "Area2",
  "counties": [
    "County3",
    "County4",
  ],
  "mapColor": "Green"
},
{
  "wda": "Area3",
  "counties": [
    "County5",
    "County6",
  ],
  "mapColor": "Brown"
},

预期答案

{ "County1",  "mapColor": "Green" }

我怎么会有这个结果呢?

piok6c0g

piok6c0g1#

你可以建立一个列表,就像你正在寻找的一样,通过循环列表,并在你去的时候建立你期望的列表。这里有一个例子,它并没有完全按照你想要的格式来格式化json,因为我们需要一个郡的键值,(或者你可以将每个新的“条目”格式化为一个包含郡名和颜色对象的列表)。

let formatted = [];
list.forEach(entry => {
    entry.counties.forEach(county => {
        formatted.push({ county: county, "mapColor": entry.mapColor})
    });
});
return formatted;

这样的输出将如下:

[{"county": "County1", "mapColor": "yellow"}, {"county": "County2", "mapColor":"yellow"}, ...]

相关问题