Promise.reject() 方法

admin 發表於2019-07-25

關於Promise物件的基本介紹可以參閱JavaScript Promise 物件一章節。

Promise.reject()方法是Promise的靜態方法, 返回一個以給定引數值解析後的Promise物件。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
Promise.reject(value);

引數解析:

(1).value:可選,用來待解析的引數。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let p = Promise.reject();
p.catch(function () {
  console.log("螞蟻部落");
});

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201907/25/114726dzi2wutuez7wv7ya.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

如果Promise.reject()沒有引數,直接返回一個Rejected狀態的Promise物件。

於是catch的回撥函式得到執行,列印結果是"螞蟻部落"。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let p = Promise.reject("螞蟻部落");
p.catch(function (value) {
  console.log(value);
});

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201907/25/114757y7yscvwfyp4kc7s5.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

如果Promise.reject()方法的引數是值型別,返回一個Rejected狀態的Promise物件。

引數傳遞給catch()方法的第一個回撥函式,於是列印結果是"螞蟻部落"。

上面的程式碼等同於如下程式碼:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let p = new Promise(function (resolve, reject) {
  reject("螞蟻部落")
})
p.catch(function (value) {
  console.log(value);
});

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201907/25/114822lrp2vbova5rvbpar.jpg\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上面程式碼非常的簡單,不做過多介紹。