Direkt zum Hauptinhalt springen
eLearner.app
Modul 6 · Lektion 3 von 423/32 im Kurs~10 min
Lektionen des Moduls (3/4)

find, some, every

Drei kompakte Methoden zum Suchen in einem Array, ohne die Schleife von Hand schreiben zu müssen.

find: Das erste Element, das eine Bedingung erfüllt

JS
const utenti = [
  { nome: 'Anna', eta: 30 },
  { nome: 'Luca', eta: 12 },
  { nome: 'Sara', eta: 18 },
];

utenti.find((u) => u.eta >= 18);
// { nome: 'Anna', eta: 30 }

utenti.find((u) => u.nome === 'Marco');
// undefined  ← se nessuno corrisponde

Variante findIndex: Gibt den Index zurück (oder -1).

some: Mindestens eines

JS
const nums = [1, 2, 3, 4, 5];

nums.some((n) => n > 4); // true
nums.some((n) => n > 100); // false

[].some(() => true); // false  ← su array vuoto è sempre false

every: Alle

JS
const nums = [1, 2, 3, 4, 5];

nums.every((n) => n > 0); // true
nums.every((n) => n > 2); // false

[].every(() => false); // true  ← su array vuoto è sempre true!

Die Asymmetrie von some und every bei leeren Arrays ist beabsichtigt und logisch konsistent mit den logischen Operatoren „es existiert“ (∃) und „für alle“ (∀).

Probier es aus

Übung#js.m6.l3.e1
Versuche: 0Wird geladen…

Definiere `firstAdult(users)`: Gibt für ein gegebenes Array von { name, age } den Namen (name) der ersten Person zurück, deren age >= 18 ist, oder null, falls niemand die Bedingung erfüllt. Verwende find.

Editor wird geladen…
Hinweis anzeigen

users.find(...); wenn gefunden, u.name zurückgeben, andernfalls null.

Lösung nach 3 Versuchen verfügbar

Wiederholungsübung

Übung#js.m6.l3.e2
Versuche: 0Wird geladen…

Definiere `allPositive(nums)`: Gibt true zurück, wenn alle Elemente von nums > 0 sind (und das Array NICHT leer ist), andernfalls false. Verwende every + eine Längenprüfung (length).

Editor wird geladen…
Hinweis anzeigen

length > 0 && nums.every(n => n > 0)

Lösung nach 3 Versuchen verfügbar