在JavaScript中合并具有相同键的对象

塔比什汗

如果我有一个像这样的对象数组,我很久以来一直试图弄清楚这一点:

var my_array = [
    Object {Project: A, Hours: 2},
    Object {Project: B, Hours: 3},
    Object {Project: C, Hours: 5},
    Object {Project: A, Hours: 6},
    Object {Project: C, Hours: 9}
]

我想将所有具有相同键的对象合并到一个对象中,以使它们的时间加起来:

预期产量:

my_array = [
    Object {Project: A, Hours: 8}
    Object {Project: B, Hours: 3}
    Object {Project: C, Hours: 14}
]

我该如何解决这个问题?以这种方式格式化数据花了我很长时间,这是最后一步!

我的尝试是,我遍历数组,不确定如何处理对象的合并:

for (var i =0; i<my_array.length; i++) {
   my_array[i].Project   // access the object project key
   my_array[i].Hours     // need to increment hours
}
gurvinder372

尝试中,您错过了创建新数组的机会

var newArray = [];
var uniqueprojects = {};
for (var i =0; i<my_array.length; i++) {

   if ( !uniqueproject[my_array[i].Project] )
   {
     uniqueproject[my_array[i].Project] = 0;
   }
   uniqueproject[my_array[i].Project] += my_array[i].Hours;
   //my_array[i].Project   // access the object project key
   //my_array[i].Hours     // need to increment hours
}

现在从uniqueproject地图创建最终的输出数组

newArray = Object.keys(uniqueproject).map(function(key){return {Project:key, Hours:uniqueproject[key]}});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在JavaScript中合并具有相同键的对象?

来自分类Dev

如何在javascript中合并具有相同键的数组中的对象?

来自分类Dev

如何合并数组中具有相同键的对象?

来自分类Dev

合并具有相同键的对象数组

来自分类Dev

在javascript对象中聚合具有相同值的键

来自分类Dev

在 JavaScript 中将所有键合并为具有相同 Id 的单个对象

来自分类Dev

当键具有完全相同的值时合并对象

来自分类Dev

需要合并具有相同键但值不同的对象

来自分类Dev

如果对象数组的项具有相同的键,则合并它们

来自分类Dev

如何合并具有相同键的对象数组

来自分类Dev

使用ansible合并字典变量列表中具有相同键的对象值

来自分类Dev

如何在两个对象数组中合并具有相同键的属性?

来自分类Dev

我如何使用javascript中具有相同键的对象在对象中创建对象数组

来自分类Dev

在对象数组中合并带有“相同键”的对象

来自分类Dev

将具有相同键的多个对象的内容与该键作为 JavaScript 中的属性组合

来自分类Dev

使用循环合并具有相同键的数组中的javascript数组

来自分类Dev

在Python中合并具有相同键的字典层次结构

来自分类Dev

如果对象具有相同的日期,则合并数组中的对象

来自分类Dev

合并具有相同值的对象数组中的对象

来自分类Javascript

使用相同的键合并数组中的javascript对象

来自分类Dev

Javascript合并具有相同属性的对象

来自分类Dev

合并对象数组,将具有相同值的键合并并保持唯一值

来自分类Dev

JavaScript:深度检查对象具有相同的键

来自分类Dev

对具有相同键的 javascript 对象值求和

来自分类Dev

使用 lodash 将具有相同键的对象的值合并到一个数组中

来自分类Dev

在js的数组中合并具有相同id的对象

来自分类Dev

合并数组中具有相同ID的对象

来自分类Dev

合并具有相同键的字典

来自分类Dev

动态合并具有相同键的数组

Related 相关文章

  1. 1

    如何在JavaScript中合并具有相同键的对象?

  2. 2

    如何在javascript中合并具有相同键的数组中的对象?

  3. 3

    如何合并数组中具有相同键的对象?

  4. 4

    合并具有相同键的对象数组

  5. 5

    在javascript对象中聚合具有相同值的键

  6. 6

    在 JavaScript 中将所有键合并为具有相同 Id 的单个对象

  7. 7

    当键具有完全相同的值时合并对象

  8. 8

    需要合并具有相同键但值不同的对象

  9. 9

    如果对象数组的项具有相同的键,则合并它们

  10. 10

    如何合并具有相同键的对象数组

  11. 11

    使用ansible合并字典变量列表中具有相同键的对象值

  12. 12

    如何在两个对象数组中合并具有相同键的属性?

  13. 13

    我如何使用javascript中具有相同键的对象在对象中创建对象数组

  14. 14

    在对象数组中合并带有“相同键”的对象

  15. 15

    将具有相同键的多个对象的内容与该键作为 JavaScript 中的属性组合

  16. 16

    使用循环合并具有相同键的数组中的javascript数组

  17. 17

    在Python中合并具有相同键的字典层次结构

  18. 18

    如果对象具有相同的日期,则合并数组中的对象

  19. 19

    合并具有相同值的对象数组中的对象

  20. 20

    使用相同的键合并数组中的javascript对象

  21. 21

    Javascript合并具有相同属性的对象

  22. 22

    合并对象数组,将具有相同值的键合并并保持唯一值

  23. 23

    JavaScript:深度检查对象具有相同的键

  24. 24

    对具有相同键的 javascript 对象值求和

  25. 25

    使用 lodash 将具有相同键的对象的值合并到一个数组中

  26. 26

    在js的数组中合并具有相同id的对象

  27. 27

    合并数组中具有相同ID的对象

  28. 28

    合并具有相同键的字典

  29. 29

    动态合并具有相同键的数组

热门标签

归档