Middle+
// findUnique metode tiek ir tiek taikomas masīvam, kas atgriež jaunu masīvu ar unikāliem elementiem, // tas ir tie, kas ir parādās tikai vienu reizi sākotnējā masīvā, tajā pašā secībā. // Ir nepieciešams īstenot findUnique metodi tā, lai tā darbotos kā parasta masīva metode [10, 5, 10, 1, 6, 6, 7, 9, 9, 10].findUnique(); // [5, 1, 7]
sobes.tech AI
Atbilde no AI
Lai pievienotu findUnique metodi masīvam, kas atgriež jaunu masīvu ar elementiem, kas ir tieši vienreiz sākotnējā masīvā, jūs varat paplašināt masīva prototipu šādi:
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);
};
// Piemērs lietošanai:
const arr = [10, 5, 10, 1, 6, 6, 7, 9, 9, 10];
console.log(arr.findUnique()); // [5, 1, 7]
Skaidrojums:
- Vispirms mēs izveidojam
countsobjektu, kur atslēgas ir masīva elementi, bet vērtības ir to parādīšanās skaits. - Tad filtrējam sākotnējo masīvu, atstājot tikai tos elementus, kuru parādīšanās skaits ir 1.
Tādējādi, šī metode darbojas kā parasta masīva metode un saglabā elementu kārtību.