Zum Inhalt springen

JavaScript-Iterables und Iteratoren

Einführung in JavaScript-Iterables

JavaScript-Iterables sind Objekte, die ein bestimmtes Protokoll implementieren und somit von Iterationskonstrukten wie for...of konsumiert werden können. Dieser Leitfaden behandelt die Kernkonzepte, integrierten Iterables und praktische Techniken zum Arbeiten mit Sammlungen.

Was sind Iterables in JavaScript?

Im Kern ist ein Iterable ein Objekt, das die Symbol.iterator-Methode implementiert und so den sequenziellen Zugriff auf seine Elemente ermöglicht. Mehrere integrierte Typen in JavaScript sind iterierbar, darunter Array, String, Map, Set und mehr. Es ist wichtig, zwischen einem Iterable (dem durchlaufenen Objekt) und einem Iterator (dem von Symbol.iterator zurückgegebenen Objekt, das die eigentliche Durchlaufoperation ausführt) zu unterscheiden. Diese Iterables sind integraler Bestandteil verschiedener Operationen, wie Schleifen und Datenmanipulation.

INFO

Für eine detaillierte Untersuchung der JavaScript Map- und Set-Objekte lesen Sie bitte unseren umfassenden Leitfaden zu JavaScript Map und Set.

Beispiel eines Iterables: Array

Schauen wir uns ein grundlegendes Beispiel für ein Iterable in JavaScript an:


Output appears here after Run.

Dieses Code-Snippet veranschaulicht das Durchlaufen eines Arrays von Früchten, eines gängigen Iterables. Die for...of-Schleife ruft automatisch die Symbol.iterator-Methode des Iterables auf und verbraucht den daraus resultierenden Iterator, bis done true ist.

Die Symbol.iterator-Methode

Das Herzstück eines Iterables ist seine Symbol.iterator-Methode. Diese spezielle Methode gibt einen Iterator zurück, der einen Mechanismus zum Durchlaufen der Elemente des Iterables bereitstellt.

Beispiel: Benutzerdefiniertes Iterable-Objekt


Output appears here after Run.

In diesem Beispiel haben wir ein benutzerdefiniertes Iterable-Objekt mit einer eigenen Symbol.iterator-Methode erstellt. Hinweis: Die Kurzschreibweise für Methoden stellt sicher, dass this korrekt auf das myIterable-Objekt verweist. (Die Verwendung einer Pfeilfunktion würde this lexikalisch erfassen und das Muster durchbrechen.)

Fortgeschrittene Iterationstechniken

Während Sie Ihre JavaScript-Reise fortsetzen, werden Sie auf Szenarien stoßen, die ausgefeiltere Iterationstechniken erfordern.

Verwendung von Array.from()

Die Array.from()-Methode ist ein leistungsstarkes Werkzeug, das eine neue Array-Instanz aus einem Iterable-Objekt erstellt.

Beispiel: Konvertieren eines Sets in ein Array


Output appears here after Run.

Spread-Syntax mit Iterables

Die Spread-Syntax (...) ermöglicht es, Iterables dort zu erweitern, wo Argumente oder Elemente erwartet werden.

Beispiel: Zusammenführen von Arrays


Output appears here after Run.

Fazit

Die Beherrschung von JavaScript-Iterables eröffnet unzählige Möglichkeiten im Datenhandling und in der Datenmanipulation. Durch das Verständnis und die Nutzung der in diesem Leitfaden beschriebenen Konzepte und Techniken sind Sie bestens gerüstet, um eine Vielzahl von Programmierherausforderungen zu bewältigen. Wenn Sie weiterhin die Tiefen von JavaScript erkunden, denken Sie daran, dass Iterables ein Schlüsselelement beim Schreiben von effizientem, elegantem und effektivem Code sind.

Praxis

Welche der folgenden Aussagen über JavaScript-Iterables sind korrekt?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.