Javascript Remover objetos duplicados da array

Última atualização em Sexta-feira 3º jun 2022

Javascript Remover objetos duplicados da array

Vamos pegar uma array de objetos e remover aqueles que são objetos duplicados.

Como sabemos que são duplicatas?
Talvez eles tenham o mesmo número de identificação que sabemos é ser único.

	const array = [
  { id: 1, name: "Francisco" },
  { id: 2, name: "Rodrigo" },
  { id: 3, name: "Martim" },
  { id: 4, name: "Tomás" },
  { id: 5, name: "Duarte" },
  { id: 1, name: "Francisco" },
  { id: 2, name: "Rodrigo" },
  { id: 4, name: "Tomás" },
];
	
  • O método reduce() é uma função de ordem superior, então precisamos passar uma função nela.

Usar Spread Operator o Usar Array.from

com Spread

	const unico = (arr) => [
    ...array.reduce(
        (map, each) =>
        map.set(each.id, each), new Map()
    ).values()
];
	

com Array.from

	const unico = (arr) => Array.from(
    arr.reduce((map, each) =>
        map.set(each.id, each), new Map()
    ).values()
);
	
	console.log(unico(array))

// [
//   { id: 1, name: 'Francisco' },
//   { id: 2, name: 'Rodrigo' },
//   { id: 3, name: 'Martim' },
//   { id: 4, name: 'Tomás' },
//   { id: 5, name: 'Duarte' },
// ]
	
remover objetos repetidos array javascript
remover objetos duplicados array javascript
remover duplicados array javascript
array de objetos javascript