Promise(2)
then 和 catch:
Promise 的實(shí)例,有一個 then方法,其作用是為 Promise 實(shí)例添加狀態(tài)改變時的回調(diào)函數(shù)。
1. then 方法的第一個參數(shù)是Resolved狀態(tài)的回調(diào)函數(shù),第二個參數(shù)(可選)是Rejected狀態(tài)的回調(diào)函數(shù)。
2. then 方法是定義在 Promise 的構(gòu)造函數(shù)上的 即:Promise.prototype.then()
3. then
方法返回的是一個新的 Promise實(shí)例
Promise 的實(shí)例,還有一個 catch 方法,用于指定發(fā)送錯誤時的回調(diào)函數(shù)。也可以把它當(dāng)做是:.then(null, reject)
的別名。

?1. Promise 對象的錯誤具有“冒泡”性質(zhì),會一直向后傳遞,直到被捕獲為止。也就是說,錯誤總是會被下一個catch
語句捕獲。
?2. catch
方法返回的還是一個 Promise 對象,因此后面還可以接著調(diào)用 then
方法。
Promise實(shí)例在new的瞬間,就會立刻執(zhí)行!

重點(diǎn):Promise狀態(tài)改變 以及 多個異步的處理:
Promise 執(zhí)行下一個任務(wù)靠的是狀態(tài)的改變。當(dāng)它的狀態(tài)是:已完成(fulfilled)時,才會開始執(zhí)行下一個任務(wù)。


標(biāo)簽: