Я работаю над некоторым кодом, с которым я незнаком.
У меня есть набор данных, который выглядит следующим образом:
[
{"id": 1, "person_name": "joe", "parent_id": "1ax"}
{"id": 2, "person_name": "jane", "parent_id": "5t6"}
{"id": 3, "person_name": "john", "parent_id": "a88"}
]
Первоначально код содержит эту строку:
const values = this.data.map((d) => d.person_name).sort();
, а затем это:
groups = Object.values(
values.reduce((a, c) => {
(a[c] || (a[c] = { name: c, rcount: 0 })).rcount += 1;
return a;
}, {})
).sort(({ rcount: ac }, { rcount: bc }) => bc - ac);
Результатом будет что-то вроде этого:
[
{name: "joe", rcount: 1},
{name: "jane", rcount: 1},
{name: "john", rcount: 1}
]
Я хотел бы включить parent_id в окончательный вывод, но могу Не понимаю, как.
Я пробовал несколько вещей в разделе .map()
, но ни один из них еще не работал.
Я пробовал это, например:
const values = this.data.map((d) => d.person_name, d.parent_id).sort();
Есть ли способ, которым я могу сопоставить объект, а затем ссылаться на person_name и parent_id из значений при выполнении сокращения?