JavaScript · Senior · Frage 7 von 75
Wofür ist ein asynchroner Generator praktisch?
async function* pages(url) {
while (url) {
const res = await fetch(url).then(r => r.json());
yield res.items;
url = res.next;
}
}- 1Um Requests parallel in eigenen Threads auszuführen
- 2Um Daten, die asynchron in Teilen ankommen, träge auszuliefern
- 3Um synchron auf eine Antwort zu warten, ohne die Event Loop zu blockieren
Antwort zeigen
Richtige Antwort: Um Daten, die asynchron in Teilen ankommen, träge auszuliefern
Erklärung
Der Konsument schreibt for await (const items of pages(url)) und entscheidet, wann er aufhört - die nächste Seite wird erst angefordert, wenn sie gebraucht wird. Das Verlassen der Schleife mit break ruft return() des Generators auf und beendet ihn.