最简单的迭代方法

时间:2018-10-18 08:36:10

标签: javascript

我有一个像这样的数组,

const data = [{
  prop1: 342141234213,
  prop2: {
    x: 1,
    y: 2,
    z: 3
  }
}]

想要结果,

[
{x: [{a: 342141234213, b: 1}]},
{y: [{a: 342141234213, b: 2}]},
{z: [{a: 342141234213, b: 3}]}
]

有没有一种方法可以做到这一点?尝试了许多方法,但总是以复杂的东西告终。 ES6 / 7好的。假设数据可以有多个成员。

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式尝试使用Object.keys()map()

const data = [{
  prop1: 342141234213,
  prop2: {
    x: 1,
    y: 2,
    z: 3
  }
}]

const res = data.map(e => {
  return Object.keys(e.prop2).map((d) => {
    return {[d]: [{a: e.prop1, b: e.prop2[d]}]};
  });
});

console.log(res);