當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript Promise then()用法及代碼示例


每當承諾得到解決時,就會調用 JavaScript Promise then() 方法。它從已解決的承諾中獲取數據。它最多可以接受兩個參數,分別是已完成和已拒絕案例的回調函數。就像 catch() 方法一樣,它也返回一個 Promise,因此它用於鏈接 Promise。

用法:

then(successFunc, rejectFunc)

參數:它通常最多需要兩個參數,第二個參數是可選的。這些參數從 Promise 接收數據

  • successFunc: 當 Promise 被解析時,這個異步回調函數就會被執行
  • rejectFunc: 當 Promise 被拒絕時執行此異步回調函數

返回值:此方法返回一個處於掛起狀態的 Promise,即使前一個 Promise 已完成也是如此。

示例 1:此示例使用 then 方法來處理 Promise 的解析狀態。

Javascript


let prom1 = new Promise((resolve, reject)=>{
    resolve("Success");
})
.then(e=>{console.log("Hello Successful")})

輸出:

Hello Successful

示例 2:此示例使用 then 方法通過傳遞第二個參數來處理 Promise 的拒絕。

Javascript


let prom1 = new Promise((resolve, reject)=>{
    reject("Rejected");
})
.then(e=>{console.log("Hello Successful")}, e=>{console.log(e)})

輸出:

Rejected

示例 3:此示例使用 then 方法來鏈接 Promise。

Javascript


let prom1 = new Promise((resolve, reject)=>{
    resolve("Successful");
})
.then(e=>{ 
            console.log(e)
            return "Completed"
      })
.then(e=>{console.log(e)})

輸出:第一個 then 返回由第二個 then 塊處理的 Promise

Successful
Completed

支持的瀏覽器:

  • Chrome
  • Edge
  • Firefox
  • Opera
  • Safari

我們有 Javascript Promise 方法的完整列表,要檢查這些方法,請閱讀 Javascript Promise Reference 文章



相關用法


注:本文由純淨天空篩選整理自shobhit_sharma大神的英文原創作品 JavaScript Promise then() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。