【问题标题】:How to transform an array into a new array [duplicate]如何将数组转换为新数组[重复]
【发布时间】:2017-05-30 21:03:20
【问题描述】:

如何将数组中的值转换为新数组?

我有一个类似的数组:

[
  { "amount" : 10, "date" : "2017-05-30" }...
]

我想“转换”成的

[
  { x : 10, y: 2017-05-30 }
]

感谢任何帮助...

【问题讨论】:

  • 您只想更改对象键的名称吗?
  • @PeterMader 基本上是的 :-)
  • 我想知道为什么当人们可以在 30 秒内回答完整代码时,正常的发帖规则永远不会适用......简单的代表是否优先于问题的质量......即使现在的问题也有2 个赞成票(我认为这是为了吸引人们对答案的关注)...... cmets 在哪里要求 OP 展示他们尝试过的内容?更不用说重复了!

标签: javascript


【解决方案1】:

您可以使用新属性映射新对象。

var array = [{ amount: 10, date: "2017-05-30" }],
    newArray = array.map(a => ({ x: a.amount, y: a.date }));

console.log(newArray);

【讨论】:

    【解决方案2】:

    使用Array#map()

    回调函数将创建一个具有所需 2 个属性的新对象。你只需要保留当前数组的值

    const array = [{ "amount" : 10, "date" : "2017-05-30" }];
    
    let newArray = array.map(_=>({x:_.amount,y:_.date}));
    console.log(newArray);

    【讨论】:

      【解决方案3】:

      你可以尝试使用lodash map Lodash map

      会是这样的:

      const array2 = _.map(array1, (item) => { x: item.amount, y: item.date });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-15
        • 1970-01-01
        • 2021-05-17
        • 1970-01-01
        • 2017-08-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多