Promesas sind in modernem JavaScript allgegenwärtig und ermöglichen asynchrone Vorgänge. Obwohl ihre Verwendung gut dokumentiert ist, können bestimmte Aspekte verwirrend sein. Eine häufige Frage ist, wie man auf den Wert eines Versprechens zugreifen kann, insbesondere wenn Versprechen über die Methode .then() verkettet sind.
Im bereitgestellten Beispiel wird PromiseB aus PromiseA erstellt. In der Dokumentation heißt es, dass „promiseB“ nach der Auflösung von „promiseA“ einen Wert enthält, der dem Ergebnis 1 entspricht. Es ist jedoch nicht sofort klar, wie auf diesen Wert zugegriffen werden kann.
Zugriff auf Promise-Werte
Der Schlüssel zum Verständnis liegt darin, dass die Methode .then() ein neues Promise zurückgibt das aufgelöst wird, nachdem das ursprüngliche Versprechen (in diesem Fall PromiseA) aufgelöst wurde. Der Wert dieses neuen Versprechens wird durch das bestimmt, was von der Erfolgsrückruffunktion zurückgegeben wird.
Im bereitgestellten Beispiel gibt der Erfolgsrückruf Ergebnis 1 zurück, was bedeutet, dass PromiseB mit diesem Wert aufgelöst wird. Um auf diesen Wert zuzugreifen, würden Sie PromiseB.then(function(result) {...}) auf die gleiche Weise verwenden, wie Sie auf PromiseA zugreifen würden.
Async/Await Syntax
ECMAScript 2016 (ES7) führte die async/await-Syntax ein, die eine Alternative zur .then()-Methode für die Arbeit mit Versprechen bietet. Mit async/await können Sie direkt auf den Wert eines Versprechens zugreifen, indem Sie das Schlüsselwort „await“ verwenden.
Anstatt beispielsweise zu schreiben:
promiseB.then(function(result) { // Use the result });
Sie können auch schreiben:
async function doSomething() { const result = await promiseB; // Use the result }
Beachten Sie jedoch, dass async/await nur innerhalb einer asynchronen Funktion verwendet werden kann.
Das obige ist der detaillierte Inhalt vonWie greife ich auf den aufgelösten Wert eines verketteten Versprechens in JavaScript zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!