Cómo borrar elementos duplicados en un array en JS

Una situación bastante común en el trabajo de un programador: tenemos un array y queremos quedarnos solo con los valores únicos, es decir borrar los duplicados. Aquí te explico como hacerlo con Javascript.
Por ejemplo, tenemos este array:
1 | const lista = ['A', 'B', 'B', 'C']; |
Como sabemos, la estructura Set de Javascript tiene todos sus elementos únicos, por lo tanto podríamos crear un nuevo set a partir de nuestro array y luego obtener un nuevo array. Y como procede de un set, por definición todos sus elementos serán únicos. Entonces:
1 2 | const listaUnica = [...new Set(lista)]; /* listaUnica es ahora: ['A', 'B', 'C'] */ |
Con una sola línea resolvemos el problema. Lo que este código hace es lo siguiente: inicia un Set con nuestro array lista
, luego desestructuramos este Set en un array usando el operador ...
delante del new Set()
) y simplemente lo envolvemos con paréntesis recto.
Es importante mencionar que este método funciona solo con valores primitivos (booleanos, números, strings, símbolos) pero no con objetos.