Middle
/* Vajadzētu uzrakstīt polyfill funkcijai Array.prototype.some Parametri - callback - funkcija, kas pārbauda katru elementu, pieņem trīs argumentus: - element - Pašreizējais apstrādātais elements masīvā. - index (Neobligāti) - Pašreizējā apstrādātā elementa indekss. - array (Neobligāti) - Masīvs, uz kura tiek veikta iterācija. - thisArg (Neobligāti) - Vērtība, kas tiek izmantota kā this funkcijas callback izpildes laikā. Atgriežamā vērtība true, ja pārbaudes funkcija atgriež truthy vērtību vismaz vienam masīva elementam. Pretējā gadījumā - false. */ Array.prototype.some = function (callback, thisArgs) { const array = this; for (let i = 0; i < array.length; i++) { if (!(i in array)) continue; const result = callback.call(thisArgs, array[i], i, array); if (result) return true; } return false; }
sobes.tech AI
Vastus AI-lt
Array.prototype.some polyfill on õigesti rakendatud. Siin on näide koos selgitustega:
Array.prototype.some = function (callback, thisArg) {
const array = this;
for (let i = 0; i < array.length; i++) {
// Kontrollib, kas element indeksil i eksisteerib (sparse massiivide jaoks)
if (!(i in array)) continue;
// Kutsub callbacki õigete kontekstide ja argumentidega
const result = callback.call(thisArg, array[i], i, array);
// Kui callback tagastab truthy väärtuse, tagastab true
if (result) return true;
}
// Kui ükski element ei tagasta true, tagastab false
return false;
};
Kasutusnäide:
const arr = [1, 2, 3, 4];
const hasEven = arr.some(num => num % 2 === 0); // true
See polyfill arvestab:
- Puuduvad elemendid massiivis (sparse arrays)
thisArgkonteksti- Tagastab true esimese edukas sobivuse korral
- Tagastab false, kui ükski element ei vasta tingimusele