tutz

Remover duplicados en un array usando JavaScript

Muchas veces cuando estamos programando tenemos un array de elementos y necesitamos obtener los valores únicos dentro del array. En este pequeño tutorial vamos a ver como lograrlo, usando el tipo de dato Set.

El tipo Set solo puede contener valores únicos, por ejemplo si le pasamos un array con valores duplicados como detallamos aquí abajo.

const example = new Set([1, 1, 2])
// Set(2) {1, 2}

El valor de example nos retorna Set (2) {1, 2} , esto es porque automáticamente el constructor de Set elimina los duplicados, ya que como comentamos antes este tipo de dato solo acepta valores únicos.

Entonces si tenemos un array por ejemplo fruits que queremos eliminar sus duplicados.

const fruits = ['apple', 'orange', 'apple', 'grape', 'grape']

Primero tenemos que crear un tipo de dato set pasandole el array fruits.

const fruitsSet = new Set(fruits)
// Set(3) {'apple', 'orange', 'grape'}

Y por último convertirlo a un array nuevamente, para eso podemos usar el operador spreed ...

const fruitsUnique = [...fruitsSet]
// ['apple', 'orange', 'grape']

Y de esta manera tenemos un array sin ningún duplicado.

También podrías crear una función que te permite reusar esta lógica en diferentes partes de tu código.

function removeDuplicates (list) {
	return [...new Set(list)]
}

const fruitsUnique = removeDuplicates(fruits)
// ['apple', 'orange', 'grape']

Y de esta manera aprendimos como eliminar duplicados en un array usando JavaScript.