Получить уникальные пары свойств из массива объектов (Angular 2+) - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь получить массив уникальных комбинаций Имя + Фамилия из массива объектов в Angular 7.

Ниже приведены примеры данных:

[{"First_Name": "Jane", "Last_Name": "Doe", "State": "Louisiana"},
{"First_Name": "John", "Last_Name": "Doe", "State": "Louisiana"},
{"First_Name": "Sally", "Last_Name": "Smith", "State": "Iowa"},
{"First_Name": "Sally", "Last_Name": "Smith", "State": "Pennsylvania"},
{"First_Name": "Jack", "Last_Name": "Welch", "State": "New York"}]

В идеале, этовозвратил бы это (удаляет «State» и дедуплицирует «Sally Smith»):

[{"First_Name": "Jane", "Last_Name": "Doe"},
{"First_Name": "John", "Last_Name": "Doe"},
{"First_Name": "Sally", "Last_Name": "Smith"},
{"First_Name": "Jack", "Last_Name": "Welch"}]

Ниже мой код.Возвращает уникальные фамилии, но не возвращает имя.

getUniqueNames(list) {
    const valuelist = list.map(list => list['First_Name'] && list['Last_Name']);
    this.uniquevalues = valuelist.filter((x, i, a) => x && a.indexOf(x) === i);
    this.uniquevalues.sort(function(a, b){
        if(a < b) { return -1; }
        if(a > b) { return 1; }
        return 0;
    });
    return this.uniquevalues;
  }

Как лучше всего получить уникальное имя + список фамилий?

...