Zum Inhalt springen

JavaScript-Promises

Promises in JavaScript sind ein leistungsstarkes Werkzeug zur Verwaltung asynchroner Operationen, das Entwicklern ermöglicht, saubereren und robusteren Code zu schreiben. Das Verständnis, wie man Promises effektiv nutzt, ist für jeden Entwickler, der in der modernen JavaScript-Entwicklung erfolgreich sein möchte, unerlässlich.

Einführung in JavaScript-Promises

Ein JavaScript-Promise repräsentiert einen Wert, der möglicherweise noch nicht verfügbar ist, aber zu einem bestimmten Zeitpunkt in der Zukunft aufgelöst werden wird. Es ermöglicht Ihnen, Callbacks anzuhängen, um die Erfüllung oder den Fehlschlag einer asynchronen Operation zu behandeln. Dies ist eine erhebliche Verbesserung gegenüber älteren Techniken wie verschachtelten Callbacks, die oft als „Callback-Hölle“ bezeichnet werden.

Erstellen eines Promises

Um ein Promise zu erstellen, verwenden Sie den Promise-Konstruktor, der eine Funktion, die sogenannte Executor-Funktion, übernimmt. Die Argumente resolve und reject in der Executor-Funktion lernen Sie später auf dieser Seite kennen.


Output appears here after Run.

Behandeln von Ergebnissen mit .then, .catch und .finally

Sobald ein Promise erstellt wurde, können Sie die Methoden .then, .catch und .finally verwenden, um erfüllte Ergebnisse oder Ablehnungen zu behandeln.

Die .then-Methode

Die .then-Methode wird verwendet, um einen Callback für die Ausführung zu planen, wenn das Promise erfüllt wird. Damit ein Promise erfüllt werden kann, muss die resolve-Methode aufgerufen werden. Das Argument, das Sie an die resolve-Methode übergeben, ist der endgültige Wert für das Promise.


Output appears here after Run.

In diesem Code wird das Promise erst erfüllt, nachdem der 1000-ms-Timeout abgelaufen ist und die resolve-Methode mit „Done!“ aufgerufen wird.

Die Funktion im .then-Teil wird erst ausgeführt, nachdem die resolve-Methode aufgerufen wurde.

Die .catch-Methode

Die .catch-Methode wird verwendet, um das Promise zu behandeln, wenn es abgelehnt wird. Das bedeutet entweder, dass ein Fehler im Promise-Funktionsblock ausgelöst wird oder die reject-Methode aufgerufen wird.


Output appears here after Run.

Die .finally-Methode

Die .finally-Methode ermöglicht es Ihnen, Code auszuführen, nachdem das Promise abgeschlossen ist, unabhängig vom Ergebnis.


Output appears here after Run.

Abrufen von Daten von einer API mit Promises

Dieses Beispiel zeigt, wie Daten von einer Remote-API mit Promises abgerufen werden.


Output appears here after Run.

Promise-Chaining

Promise-Chaining ist eine leistungsstarke Funktion, mit der Sie mehrere asynchrone Operationen miteinander verknüpfen können. Weitere Informationen finden Sie unter JavaScript: Promises und Chaining.


Output appears here after Run.

Integration von async/await mit JavaScript-Promises

Die effektive Verwendung von async/await kann die Handhabung asynchroner Operationen vereinfachen, Ihren Code sauberer und verständlicher machen und dabei die gesamte Leistungsfähigkeit von JavaScript-Promises beibehalten. Mehr dazu erfahren Sie in JavaScript async/await, hier ist jedoch ein einfaches Beispiel.


Output appears here after Run.

Fazit

Das Beherrschen von JavaScript-Promises ist für jeden Entwickler, der asynchrone Operationen effizient verwalten möchte, von entscheidender Bedeutung. Durch das Verständnis und die Nutzung der oben beschriebenen Muster und Techniken können Entwickler sicherstellen, dass ihr JavaScript-Code lesbarer, wartbarer und zuverlässiger ist.

Praxis

Was ist ein Promise in JavaScript?

Finden Sie das nützlich?

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