find în JavaScript

Tablouri (array) ES2015 (ES6)

Returnează primul element care îndeplinește o condiție.

Sintaxă
tablou.find((element) => conditie)

Ce face find

find parcurge tabloul și se oprește la primul element pentru care funcția returnează o valoare adevărată. Dacă nu găsește nimic, returnează undefined.

Rudele lui: findIndex returnează poziția elementului (sau -1), iar some returnează doar true sau false.

Ce returnează

Primul element găsit sau undefined.

Exemple

Exemplul 1: Căutarea după id

const utilizatori = [
  { id: 1, nume: "Ana" },
  { id: 2, nume: "Mihai" },
];

console.log(utilizatori.find((u) => u.id === 2));
console.log(utilizatori.find((u) => u.id === 7));

Rezultat

{ id: 2, nume: 'Mihai' }
undefined

Exemplul 2: findIndex și some

const temperaturi = [12, 18, 25, 31, 22];

console.log(temperaturi.find((t) => t > 20));
console.log(temperaturi.findIndex((t) => t > 20));
console.log(temperaturi.some((t) => t > 30));

Rezultat

25
2
true

Greșeli frecvente

  • Citești o proprietate direct din rezultat: lista.find(...).nume. Dacă nu s-a găsit nimic, primești TypeError: Cannot read properties of undefined. Scrie lista.find(...)?.nume.

Comenzi înrudite

  • filter: Creează un tablou nou doar cu elementele care îndeplinesc o condiție.
  • includes: Verifică dacă un text conține alt text sau dacă un tablou conține o valoare.
  • map: Creează un tablou nou, transformând fiecare element cu o funcție.