{}const=>[]async()letfn</>var
Entwicklung

findLast() und findLastIndex() — eine kleine Revolution in Arrays

Wir zeigen anhand von realen Beispielen, warum neue Array-Methoden die alten Krücken mit reverse() ersetzen. Kurz, klar und ohne Mutationen.

К

Kodik

Autor

2 Min. Lesezeit

JavaScript kann auch im Jahr 2025 noch überraschen. Es scheint, dass wir bereits alles haben, um mit Arrays zu arbeiten: map, filter, find, reduce... Aber kürzlich sind neue Methoden aufgetaucht — findLast() und findLastIndex(). Und das ist nicht nur Kosmetik, sondern eine echte kleine Revolution.

Warum brauchen wir neue Methoden?

Bis vor kurzem, wenn wir letztes Element des Arrays, die Bedingung erfüllend, musste man umgehen:

  • Drehen Sie das Array durch reverse() und wenden Sie find() an.

  • Oder durchlaufen Sie den Zyklus vom Ende.

Die Nachteile liegen auf der Hand:

  • reverse() mutiert das Array — gefährlich und nicht offensichtlich.

  • Der Zyklus ist schwerfällig und nicht im Sinne des modernen JavaScript.

🔥 100.000+ Schüler sind bereits bei uns

Genug Theorie gelesen?
Zeit zu coden!

Kodik — eine App, in der du durch Praxis programmieren lernst. KI-Mentor, interaktive Lektionen, echte Projekte.

🤖 KI 24/7
🎓 Zertifikate
💰 Kostenlos
🚀 Jetzt starten
Heute beigetreten

Was sich geändert hat

Jetzt ist alles einfacher:

  • findLast() sucht nach dem letzten Element, das der Bedingung entspricht.

  • findLastIndex() gibt den Index dieses Elements zurück.


const users = [
  { name: "Anya", active: false },
  { name: "Boris", active: true },
  { name: "Vika", active: false },
  { name: "Gosha", active: true }
];

console.log(users.findLast(user => user.active));
// {name: "Gosha", aktiv: wahr}}

console.log(users.findLastIndex(user => user.active));
// 3
    

Warum ist das besser als die alten Tricks?

  • Der Code wird als Text gelesen - es ist nicht nötig, die Absicht zu erraten.

  • Sicherheit — keine Mutationen im Array.

  • Geschwindigkeit - Der Interpreter geht vom Ende und stoppt bei der ersten Übereinstimmung.

„Vorher/Nachher“: Beispiele

Aufgabe

War (früher)

Jetzt

Letzter aktiver Benutzer


const lastActive = users
  .slice()
  .reverse()
  .find(u => u.active);
          

const lastActive = users.findLast(u => u.active);
          

Letzter Fehlerindex


const i = logs.length - 1 - logs
  .slice()
  .reverse()
  .findIndex(e => e.level === "error");
          

const i = logs.findLastIndex(e => e.level === "error");
          

Letztes gerades Element


let last;
for (let i = arr.length - 1; i >= 0; i--) {
  if (arr[i] % 2 === 0) { last = arr[i]; break; }
}
          

const last = arr.findLast(n => n % 2 === 0);
          

Häufig gestellte Fragen

  • Was wird zurückgegeben? findLast() — Element oder undefined. findLastIndex() — Index oder -1.

  • Über die Leistung: durchläuft das Array einmal vom Ende, ohne Drehung und Kopien.

  • TypeScript: Signaturen sind ähnlich find/findIndex, der Übergang ist minimal.

Fazit

findLast() und findLastIndex() sind ein praktischer Ersatz für die Krückenmuster mit reverse() und manuellen Schleifen. Der Code wird kürzer, sicherer und klarer.

🙌 All diese Tricks und Neuheiten besprechen wir in unserem gemütlichen Telegram-Kanal, wo wir Neuigkeiten aus der Welt der Entwicklung teilen, neue Tools analysieren und über das Leben von Programmierern scherzen. Mach mit — es wird interessant!

🎯Hör auf zu zögern

Artikel gefallen?
Zeit zum Üben!

Bei Kodik liest du nicht nur — du schreibst sofort Code. Theorie + Praxis = echte Skills.

Sofortige Praxis
🧠KI erklärt Code
🏆Zertifikat

Keine Registrierung • Keine Karte