首頁 > web前端 > js教程 > 如何在 JavaScript 中存取鍊式 Promise 的解析值?

如何在 JavaScript 中存取鍊式 Promise 的解析值?

DDD
發布: 2024-12-21 09:24:10
原創
966 人瀏覽過

How Do I Access the Resolved Value of a Chained Promise in JavaScript?

理解 Promise 值存取

promesas 在現代 JavaScript 中無所不在,允許非同步操作。雖然它們的使用有詳細記錄,但某些方面可能會令人困惑。一個常見的問題是如何存取 Promise 的值,尤其是當 Promise 透過 .then() 方法連結時。

在提供的範例中,promiseB 是從 PromiseA 建立的。文件指出,promiseA 解析後,promiseB 將保留等於結果 1 的值。然而,目前還不清楚如何存取這個值。

存取Promise 值

理解這一點的關鍵是.then() 方法傳回一個新的Promise在原始Promise(在本例中為PromiseA)解析後解析。這個新 Promise 的值由成功回呼函數傳回的值決定。

在提供的範例中,成功回呼傳回結果 1,這表示 PromiseB 將使用該值進行解析。要存取此值,您可以使用promiseB.then(function(result) {...}),就像訪問promiseA.

非同步/等待語法

ECMAScript 2016 (ES7) 引進了async/await 語法,它提供了.then()方法的替代方法來處理 Promise。使用 async/await,你可以透過使用await關鍵字直接存取promise的值。

例如,不寫:

promiseB.then(function(result) {
    // Use the result
});
登入後複製

你可以寫:

async function doSomething() {
    const result = await promiseB;
    // Use the result
}
登入後複製

但是請注意,async/await 只能在 async 函數內使用。

以上是如何在 JavaScript 中存取鍊式 Promise 的解析值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板