千鋒教育JavaScript全套視頻教程(10天學會Js,前端javascrip
2023-07-19 18:18 作者:bili_66543459482 | 我要投稿

Promise介紹
回調函數(shù)的弊端:回調地獄
?Promise 是異步編程的一種解決方案,比傳統(tǒng)的解決方案—回調函數(shù)和事件—更合理和更強大。
?一.所謂Promise,簡單說就是一個容器,里面保存著某個未來才會結束的事件(通常是一個異步操作)的結果。
? 1.promise默認存在三種狀態(tài)(進行中 pendding,成功resolve,失敗reject)
? 2.promise的三種狀態(tài)只能組合兩種可能
? 進行中-->成功
? 進行中-->失敗
? 3.狀態(tài)一旦設定(狀態(tài)設定為成功或者失敗),無法改變(承諾的意思)
二.promise對象下面的三個方法
? 1.then方法:如果狀態(tài)設定為成功resolve,執(zhí)行對象下面的then方法,通過resolve可以傳遞內(nèi)容給then。
? then方法里面可以繼續(xù)設置兩個函數(shù)做參數(shù),
? 第一個表示成功的回調
? 第二個表示失敗的回調(可選)
? 注意:then方法可以鏈式調用,說明then方 法本身也在返回promise對象
? 2.catch方法,如果狀態(tài)設定為失敗reject,執(zhí)行對象下面的catch方法,通過reject可以傳遞內(nèi)容給catch。catch理解為用來捕獲失敗或者錯誤的
3.finally方法,無論狀態(tài)是成功還是失敗,都會執(zhí)行,一般用來做收尾的一些工作
標簽: