簡體   English   中英

在 nodejs 中映射內部映射

[英]map inside map in nodejs

假設我有這個回應

[
  {
    "userId": "5e5a0be699e0e4449829c444",
    "stepId": ["5e1d82156a67173cb877f67d", "5e5906dfc749dc4498033f7e"],
    "stepCount": 1,
    "stepode": "ST01"
  },
  {
    "userId": "5e5a0be699e0e4449829c444",
    "mappedToDealers": ["5e1d82156a67173cb877f67d", "5e5906dfc749dc4498033f7e"],
    "stepCount": 40,
    "stepode": "BD01"
  }
];

我正在嘗試將其推送到一個新對象中,以便我可以根據 stepId 獲取單個對象,即

[
  {
    "userId": "5e5a0be699e0e4449829c444",
    "stepId": "5e1d82156a67173cb877f67d",
    "stepCount": 1,
    "stepode": "ST01"
  },
  {
    "userId": "5e5a0be699e0e4449829c444",
    "stepId": "5e5906dfc749dc4498033f7e",
    "stepCount": 1,
    "stepode": "ST01"
  },
  {
    "userId": "5e5a0be699e0e4449829c444",
    "stepId": "5e1d82156a67173cb877f67d",
    "stepCount": 40,
    "stepode": "BD01"
  },
  {
    "userId": "5e5a0be699e0e4449829c444",
    "mappedToDealers": "5e5906dfc749dc4498033f7e",
    "stepCount": 40,
    "stepode": "BD01"
  }
];

我認為 .map 或 forEach 兩次,一個在另一個里面,但我沒能得到這個想要的結果。

reduceforEach怎么樣?

數據= 響應

data.reduce((res, obj) => {
  obj.stepId.forEach(stepId => {
    res.push({
      ...obj,
      stepId
    });
  });
  return res;
}, []);

我們創建一個新數組並用對象填充它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM