Junior
Aký je rozdiel medzi metódami filter a find v JavaScript?
sobes.tech AI
Odpoveď od AI
filter(): Vráti nový zoznam obsahujúci všetky prvky pôvodného zoznamu, pre ktoré funkcia spätného volania vrátila pravdivú hodnotu. Ak žiadny prvok nespĺňa podmienku, vráti sa prázdny zoznam.find(): Vráti prvý prvok z pôvodného zoznamu, pre ktorý funkcia spätného volania vrátila pravdivú hodnotu. Ak žiadny prvok nespĺňa podmienku, vráti saundefined.
| Metóda | Vrátená hodnota | Počet prvkov v výsledku |
|---|---|---|
filter() |
Nový zoznam (aj keď je prázdny) | Nula, jedna alebo viac |
find() |
Hodnota prvého nájdeného prvku alebo undefined |
Nula (ak sa nenašiel) alebo jeden |
Príklad filter:
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter(num => num % 2 === 0);
// evenNumbers bude [2, 4, 6]
Príklad find:
const users = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' }
];
const firstAlice = users.find(user => user.name === 'Alice');
// firstAlice bude { id: 1, name: 'Alice' }