У меня есть массив объектов, который выглядит так:
var array = [
{id:123, value:"value1", name:"Name1"},
{id:124, value:"value2", name:"Name1"},
{id:125, value:"value3", name:"Name2"},
{id:126, value:"value4", name:"Name2"}
...
];
Как вы можете видеть, некоторые имена повторяются. Я хочу получить новый массив только с именами, но если повторяется какое-то имя, я не хочу добавлять его снова. Я хочу этот массив:
var newArray = ["Name1", "Name2"];
Я пытаюсь сделать это с помощью map
:
var newArray = array.map((a) => {
return a.name;
});
Но проблема в том, что это возвращает:
newArray = ["Name1", "Name1", "Name2", "Name2"];
Как установить некоторые условия внутри map
, чтобы он не возвращал уже существующий элемент? Я хочу сделать это с помощью map
или некоторых других функций ECMAScript 5 или ECMAScript 6.