Promise catch() 方法
關於Promise物件的基本介紹可以參閱JavaScript Promise 物件一章節。
此方法的作用與p.then(undefined, onRejected)功能相同,p是一個Promise物件。
也就是當Promise物件變為Rejected狀態時,catch的回撥函式。
語法結構:
[JavaScript] 純文字檢視 複製程式碼p.catch(onRejected);
引數解析:
(1).onRejected:必需,當p的狀態變為Rejected時,此回撥函式就會執行。
程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼執行程式碼let p = new Promise(function(resolve, reject) { if (false) { resolve(); } else { reject(); } }); p.then(function () { console.log("螞蟻部落一"); }).catch(function () { console.log("螞蟻部落二") });
程式碼執行效果截圖如下:
p物件變為Rejected狀態,就會執行catch()方法的回撥函式。
程式碼分析如下:
(1).Promise建構函式執行後,立馬呼叫其回撥函式。
(2).經過if else語句判斷執行reject()函式,Promise物件變為Rejected狀態。
(3).於是執行catch的回撥函式,列印結果為"螞蟻部落二"。
[JavaScript] 純文字檢視 複製程式碼執行程式碼let p = new Promise(function(resolve, reject) { reject(); }); p.then(function () { //code }).then(function () { //code }).catch(function () { console.log("antzone") });
程式碼執行效果截圖如下:
catch()可以捕獲它之前Rejected狀態變化,不必緊鄰。
相關文章
- 手擼 Promise (then、catch)Promise
- 實現 Promise.resolve/reject/all/race 及例項方法 .catch/.finallyPromise
- ES6 Promise——then與catch的返回值實踐Promise
- Promise和Promise的方法Promise
- Promise then() 方法Promise
- Java中try()catch{}的使用方法Java
- 返回Promise物件的函式,函式內部記得加try catch!Promise物件函式
- Promise.resolve() 方法Promise
- Promise.reject() 方法Promise
- Promise.race() 方法Promise
- JavaScript 在 Promise.then 方法裡返回新的 PromiseJavaScriptPromise
- 解決程式碼中重複的捕獲 promise 錯誤的 try catch 語句Promise
- Promise 方法的實現Promise
- try ,catch
- 掌握 Promise 的邏輯方法Promise
- Promise 原始碼:靜態方法Promise原始碼
- 實現promise.all方法Promise
- 為Promise新增一個方法Promise
- Laravel try catchLaravel
- 關於Promise後續的方法。Promise
- 從使用到原理,實現符合Promise A+規範的Promise方法Promise
- Catch the Mole(Easy Version)
- catch_child.cpp
- Promise 靜態 API 的使用方法PromiseAPI
- Promise 基本方法的簡單實現Promise
- POJ3278 Catch That Cow
- IE 不支援 Promise 解決辦法 (或者 promise 未定義)的解決方法Promise
- try-catch-finally的使用
- Java try catch finally 總結Java
- JavaScript try catch finally 語句JavaScript
- JavaScript try/catch/finally 語句JavaScript
- js中try和catch的用法JS
- (十四).try-throw-catch機制
- try/catch 的解釋與用法
- 實現Promise的原型方法--前端面試能力提升Promise原型前端面試
- Sqlserver Try Catch時Catch捕獲到錯誤則重試一次的寫法SQLServer
- ES6 Promise 應用: 回撥函式方法封裝成 Promise + async/await 同步化Promise函式封裝AI
- IDEA 自動生成try,catch快捷鍵Idea