¿Cómo eliminar duplicados de un array en JavaScript? Las formas más eficientes
¡Hola a todos! Soy nuevo en JavaScript y me encontré con esta tarea: tengo un array con números que tiene muchos valores repetidos. Necesito dejar solo los elementos únicos. Por ejemplo, tengo el array `[1, 2, 2, 3, 4, 4, 5]` y quiero obtener `[1, 2, 3, 4, 5]`.
Intenté escribir mi propia función, pero no funciona correctamente: elimina no todos los duplicados o incluso rompe el array. Aquí está mi código:
```javascript
function removeDuplicates(arr) {
for (let i = 0; i < arr.length; i++) {
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] === arr[j]) {
arr.splice(j, 1);
}
}
}
return arr;
}
```
El problema es que después de `splice` los índices se desplazan y me salto algunos elementos. Además, creo que esta solución es demasiado lenta para arrays grandes.
Por favor, indíquenme cuáles son las formas modernas y eficientes de eliminar duplicados. Me interesan soluciones tanto para tipos simples (números, strings).
No answers yet.
Inicia sesión para dejar una respuesta
Blogs