此问题在此处已有答案:
How to group a javascript object array by multiple of its properties?(2个答案)
7小时前关闭。
请帮助。我正在创建一个API,这是我试图实现的数据结构:
- 组:[{组ID,名称,成员:[{用户ID,名字,姓氏,加入日期,离开日期}] }]* 成员字段应包含具有相同组ID的所有用户我需要按组ID对此输入进行分组:
[ { groupId : 1
, name : 'test group'
, userId : 2
, first_name : 'Ross'
, last_name : 'Geller'
, joinedDate : 2022-01-13T13: 25: 43.510Z
, leftDate : 2023-02-24T19: 07: 11.110Z
}
, { groupId : 12
, name : 'test group 2'
, userId : 2
, first_name : 'Ross'
, last_name : 'Geller'
, joinedDate : 2022-01-13T00: 00: 00.000Z
, leftDate : null
}
, { groupId : 12
, name : 'test group 2'
, userId : 6
, first_name : 'Joey'
, last_name : 'Tribbiani'
, joinedDate : 2022-01-13T00: 00: 00.000Z
, leftDate : null
}
]
输入此输出:
[ { groupId : 1
, name : 'test group'
, members:
[ { userId : 5
, first_name : 'Monica'
, last_name : 'Gellar'
, joinedDate : 2022-01-13T13: 25: 43.510Z
, leftDate : null
} ] }
, { groupId : 12
, name : 'test group 2'
, members:
[ { userId : 2
, first_name : 'Ross'
, last_name : 'Geller'
, joinedDate : 2022-01-13T00: 00: 00.000Z
, leftDate : null
}
, { userId : 6
, first_name : 'Joey'
, last_name : 'Tribbiani'
, joinedDate : 2022-01-13T00: 00: 00.000Z
, leftDate : null
} ] } ]
1条答案
按热度按时间7nbnzgx91#
您可以使用
Array.prototype.reduce
: