Asynchrone Programmierung führt Arbeiten, die warten müssen, nebenher aus, ohne alles andere anzuhalten. Im Browser ist das der Normalfall.
- Asynchrone Programmierung
Vorgehen, bei dem wartende Aufgaben den weiteren Ablauf nicht aufhalten.
Beispiel: „Asynchrone Programmierung ist im Browser der Normalfall.“
Ein Strang, viele Aufgaben
JavaScript führt im Browser nur eine Sache zur Zeit aus. Eine Netzwerkabfrage dauert aber hunderte Millisekunden. Würde der Strang währenddessen warten, reagierte die Seite nicht mehr auf Klicks.
Stattdessen übergibt der Browser die Aufgabe und arbeitet weiter. Ist das Ergebnis da, wird die zugehörige Funktion in die Warteschlange gestellt und ausgeführt, sobald der Strang frei ist.
Was daraus folgt
Code nach einer Abfrage läuft, bevor deren Ergebnis da ist. Wer das Ergebnis braucht, muss es im zugehörigen Promise oder mit await abholen. Und: Eine lange Rechenschleife blockiert weiterhin alles, denn der Strang ist beschäftigt.