Из массива объектов извлеките значение свойства в виде массива в угловой

#arrays #json #angular #object

#массивы #json #угловой #объект

Вопрос:

У меня есть массив, который выглядит следующим образом:

 [  { "name":"ABC", "group":"A" },  { "name":"XYZ", "group":"A" },  { "name":"KLP", "group":"A" },  { "name":"AKG", "group":"B" },  { "name":"DIS", "group":"B" },  { "name":"FAC", "group":"B" },  { "name":"TAM", "group":"B" },  { "name":"NEW", "group":"C" },  { "name":"UTL", "group":"C" },  { "name":"WAC", "group":"C" } ]  

Как я могу отсортировать это по группам в angular Я хочу получить результат, как показано ниже

 {  "A":[ "ABC", "XYZ", "KLP" ],  "B":[ "AKG", "DIS", "FAC", "TAM" ],  "C":[ "NEW", "UTL", "WAC" ] }  

Пожалуйста, помогите мне сделать это Заранее спасибо

Ответ №1:

 const sortedData: any = {}; for (const d of this.data) {  sortedData[d.group] ? sortedData[d.group].push(d.name) : sortedData[d.group] = [d.name]; }  

Комментарии:

1. танкс. это работает