Sobes.tech
Middle+

// Se aplica el método findUnique al array, que devuelve un nuevo array con los elementos únicos, // es decir, aquellos que aparecen solo una vez en el array original, en el mismo orden. // Es necesario implementar el método findUnique para que funcione como un método normal del array [10, 5, 10, 1, 6, 6, 7, 9, 9, 10].findUnique(); // [5, 1, 7]

sobes.tech AI

Respuesta de la IA

Para agregar el método findUnique a un array, que devuelve un nuevo array con los elementos que aparecen exactamente una vez en el array original, puedes extender el prototipo del array de la siguiente manera:

Array.prototype.findUnique = function() {
  const counts = this.reduce((acc, val) => {
    acc[val] = (acc[val] || 0) + 1;
    return acc;
  }, {});

  return this.filter(item => counts[item] === 1);
};

// Ejemplo de uso:
const arr = [10, 5, 10, 1, 6, 6, 7, 9, 9, 10];
console.log(arr.findUnique()); // [5, 1, 7]

Explicación:

  • Primero creamos el objeto counts, donde las claves son los elementos del array y los valores son la cantidad de veces que aparecen.
  • Luego filtramos el array original, dejando solo aquellos elementos cuya cantidad de apariciones es igual a 1.

De esta forma, el método funciona como un método normal del array y mantiene el orden de los elementos.