How to join .map and .filter to filter and remove duplicate in object array?
I currently have to use two variables for this:
const arrayOne = [
{
id: 1,
name: "João",
city: {
id: 1,
name: "Rio de Janeiro"
}
},
{
id: 1,
name: "Pedro",
city: {
id: 2,
name: "Salvador"
}
},
{
id: 1,
name: "Tiago",
city: {
id: 1,
name: "Rio de Janeiro"
}
}
];
const arrayTwo = arrayOne.map(function (item, index) {
return item.city;
});
const arrayThree = arrayTwo.filter(
(elem, index, arr) => index === arr.findIndex((t) => t.id === elem.id)
);