Junior
Kāda ir atšķirība starp filter un find metodēm JavaScript?
sobes.tech AI
Atbilde no AI
filter(): Atgriež jaunu masīvu, kas satur visus sākotnējā masīva elementus, kuriem atgrieztā atpakaļzvana funkcija ir atgriezusi patiesu vērtību. Ja neviens elements neatbilst nosacījumam, tiek atgriezts tukšs masīvs.find(): Atgriež pirmo elementu no sākotnējā masīva, kam atgrieztā atpakaļzvana funkcija ir atgriezusi patiesu vērtību. Ja neviens elements neatbilst nosacījumam, tiek atgrieztsundefined.
| Metode | Atgrieztā vērtība | Rezultāta elementu skaits |
|---|---|---|
filter() |
Jauns masīvs (pat ja tas ir tukšs) | Nulle, viens vai vairāki |
find() |
Atrodamā pirmā elementa vērtība vai undefined |
Nulle (ja nav atrasts) vai viens |
filter piemērs:
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter(num => num % 2 === 0);
// evenNumbers būs [2, 4, 6]
find piemērs:
const users = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' }
];
const firstAlice = users.find(user => user.name === 'Alice');
// firstAlice būs { id: 1, name: 'Alice' }