Heim >Web-Frontend >js-Tutorial >Differenz der Verwendung von Async / Awit VS Versprechen?
Asynchrone JavaScript-Operationen: Detaillierte Erläuterung von Promise und async/await
Promise und Async/Await sind zwei Möglichkeiten für JavaScript, asynchrone Vorgänge zu verarbeiten. In diesem Artikel werden ihre Unterschiede, Vorteile und anwendbaren Szenarien erläutert.
Versprechen
<code class="language-javascript">const fetchData = () => { return new Promise((resolve, reject) => { setTimeout(() => { resolve("数据已获取"); }, 1000); }); }; fetchData() .then((data) => console.log(data)) .catch((error) => console.error(error));</code>
.then()
, um erfolgreiche Ergebnisse zu erzielen. .catch()
, um Fehler zu behandeln. .then()
können Sie mehrere asynchrone Vorgänge verketten. .then()
Verkettete Anrufe sind sauberer als verschachtelte Rückrufe). .catch()
für die explizite Fehlerbehandlung. .then()
-Aufrufe erfordert die Fehlerbehandlung möglicherweise besondere Aufmerksamkeit. Asynchron/Warten
<code class="language-javascript">const fetchData = async () => { try { const data = await new Promise((resolve, reject) => { setTimeout(() => { resolve("数据已获取"); }, 1000); }); console.log(data); } catch (error) { console.error(error); } }; fetchData();</code>
async
, um eine Funktion zu deklarieren, die ein Promise zurückgibt. await
, um die Ausführung anzuhalten, bis das Versprechen abgeschlossen ist. try...catch
, um Fehler zu behandeln. .then()
Kettenaufrufen ist die Syntax klarer und leichter zu verstehen. try...catch
wird zur zentralen Fehlerbehandlung verwendet. async
deklarierten Funktion verwendet werden. Wann anzuwenden
Versprechen:
Asynchron/Warten:
In Kombination verwenden
Async/await kann mit Promise für fortgeschrittene Anwendungsfälle kombiniert werden:
<code class="language-javascript">const fetchData = () => { return new Promise((resolve, reject) => { setTimeout(() => resolve("数据已获取"), 1000); }); }; const processData = async () => { try { const data = await fetchData(); console.log(data); } catch (error) { console.error(error); } }; processData();</code>
Das obige ist der detaillierte Inhalt vonDifferenz der Verwendung von Async / Awit VS Versprechen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!