In Nodejs wird „await“ verwendet, um die Ausführung nicht blockierend anzuhalten, auf die asynchrone Anforderung eines Versprechens zu warten und auf den Abschluss der asynchronen Methode zu warten. „await“ kann in asynchronen Funktionen verwendet werden, um auf den Rückgabewert einer asynchronen Funktion zu warten ; Promise gibt zurück. Wenn die Ablehnung fehlschlägt, wird der Ablehnungswert geworfen und kann durch „try/catch“ erfasst werden.
Die Betriebsumgebung dieses Artikels: Windows 10-System, NodeJS-Version 12.19.0, Dell G3-Computer.
Die Verwendung von Async/await wurde in Node.js 7 night eingeführt, aber es ist nur möglich, die async/await-Funktion offiziell in Node.js 8 und Javascript V8 zu aktivieren.
Was ist async/await? So implementieren Sie in der Vergangenheit asynchrone Vorgänge mit Promise. Der folgende Fall zeigt, wie Sie die Promise- und Fetch-API zum Abrufen von Daten verwenden:
function getTrace () { return fetch('https://www.jdon.com', { method: 'get' }) } getTrace() .then() .catch()Mit async/await können Sie die Ausführung auf nicht blockierende Weise anhalten und auf die Rückgabe des Ergebnisses warten. Wenn das Versprechen eine erfolglose Ablehnung zurückgibt, wird der Ablehnungswert ausgelöst und kann durch try/catch erfasst werden. Der obige Fall kann mit async/await wie folgt geschrieben werden:
function async getTrace () { let pageContenttry { pageContent = waiting fetch('https://www.jdon.com', { method: 'get' }) } Catch (ex) { console.error(ex) } return pageContent} getTrace() .then()Schauen wir uns den Fall der Verwendung von async/await in Node.js, der Verwendung von setimeout zum Verzögern der Ausführung einer Funktion und der Verwendung der async/await-Kapselung an:
// app.jsconst timeout = function (delay) { return new Promise((resolve, ablehn) => { setTimeout(() => { Auflösung() }, Verzögerung) }) } async function timer () { console.log ('Timer gestartet') Warte Promise.resolve(timeout(100)); console.log('Timer beendet') } timer()Erstellen Sie die Datei app.js und führen Sie Folgendes aus:
Knoten app.js
Wenn es nicht ausgeführt werden kann, handelt es sich möglicherweise um eine Nightly-Version, die Async/Await nicht offiziell unterstützt. Die Befehlszeile sollte wie folgt lauten:
Knoten --harmony-async-await app.js
Empfohlenes Lernen: „nodejs-Video-Tutorial“
Im Folgenden finden Sie Einzelheiten zur Verwendung von „await“ in nodejs. Weitere Informationen finden Sie in anderen verwandten Artikeln auf dieser Website!