Ein moderner Ansatz für den JavaScript-Schlaf: Einführung der versprechungsbasierten Lösung
Seit seiner Einführung im Jahr 2009 hat JavaScript erhebliche Veränderungen erfahren. Die einst beliebte pausecomp-Funktion zum Erstellen eines „echten“ Schlafs innerhalb einer Funktion ist veraltet. Heute erwartet uns ein effizienterer und vielseitigerer Ansatz.
Die moderne JavaScript-Sleep-Version setzt auf die Leistungsfähigkeit von Promises. Mit dem Konstruktor new Promise() können wir ein Versprechen erstellen, das nach einer angegebenen Anzahl von Millisekunden aufgelöst wird. Durch die Verwendung des Schlüsselworts „await“ können wir die Ausführung der Funktion anhalten, bis das Versprechen aufgelöst ist, und so effektiv das gewünschte Schlafverhalten erreichen.
Hier ist das aktualisierte Code-Snippet:
function sleep(ms) { return new Promise(resolve => setTimeout(resolve, ms)); }
Diese Funktion kann vielseitig einsetzbar:
Als einzeilig:
await new Promise(r => setTimeout(r, 2000));
Als eigenständige Funktion:
const sleep = ms => new Promise(r => setTimeout(r, ms));
Als typisierte Funktion in TypeScript:
const sleep = (ms: number) => new Promise((r) => setTimeout(r, ms));
Um die Schlaffunktion zu nutzen, rufen Sie sie einfach mit der gewünschten Dauer in Millisekunden auf und warten Sie ab Auflösung:
await sleep(2000);
Demo:
async function demo() { for (let i = 0; i < 5; i++) { console.log(`Waiting ${i} seconds...`); await sleep(i * 1000); } console.log('Done'); } demo();
Dieser aktualisierte Ansatz vereinfacht nicht nur die Sleep-Implementierung, sondern bietet auch eine moderne und effiziente Lösung, die die asynchrone Natur nutzt von JavaScript.
Das obige ist der detaillierte Inhalt vonWie kann ich eine moderne JavaScript-Schlaffunktion mithilfe von Versprechen implementieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!