我有一个看起来像这样的对象数组:
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功能来执行此操作。