Junior
Mi a különbség a filter és a find módszerek között JavaScript-ben?
sobes.tech MI
Válasz az MI-től
filter(): Visszaad egy új tömböt, amely tartalmazza az összes eredeti tömb elemét, amelyekre a callback függvény igaz értéket ad vissza. Ha egyetlen elem sem felel meg a feltételnek, akkor egy üres tömböt ad vissza.find(): Visszaadja az első olyan elemet az eredeti tömbből, amelyre a callback függvény igaz értéket ad vissza. Ha nincs ilyen elem, akkorundefined-et ad vissza.
| Módszer | Visszatérési érték | Eredményben lévő elemek száma |
|---|---|---|
filter() |
Új tömb (még ha üres is) | Null, egy vagy több |
find() |
Az első megtalált elem értéke vagy undefined |
Null (ha nem található) vagy egy |
Példa filter-re:
const numbers = [1, 2, 3, 4, 5, 6];
const evenNumbers = numbers.filter(num => num % 2 === 0);
// evenNumbers [2, 4, 6] lesz
Példa find-re:
const users = [
{ id: 1, name: 'Alice' },
{ id: 2, name: 'Bob' },
{ id: 3, name: 'Alice' }
];
const firstAlice = users.find(user => user.name === 'Alice');
// firstAlice { id: 1, name: 'Alice' } lesz