詳解ES6 Promise對象then方法鏈式調用
promise俗稱鏈式調用,它是es6中最重要的特性之一
簡單的說可以不停的then調用嵌套在調用(異步之后,鏈式調用方式執(zhí)行回調),這種操作方式稱為promise
then()方法的作用是Promise實例添加解決(fulfillment)和拒絕(rejection)狀態(tài)的回調函數(shù)。then()方法會返回一個新的Promise實例,所以then()方法后面可以繼續(xù)跟另一個then()方法進行鏈式調用。
let p = new Promise((resolve, reject) => { setTimeout(resolve, 1000, 'success'); }); p.then( res => { console.log(res); return `${res} again`; } ) .then( res => console.log(res) ); // 連續(xù) // success // success again
但是前一個then()方法中的回調函數(shù)中又可能返回一個Promise實例,這時候后面一個then()方法中的回調函數(shù)會等前一個Promise實例的狀態(tài)發(fā)生變化才會調用。
let p = new Promise((resolve, reject) => { setTimeout(resolve, 1000, 'success'); }); p.then( res => { console.log(res); return new Promise((resolve, reject) => { setTimeout(resolve, 1000, 'success'); }); } ) .then( res => console.log(res) ); // 相隔1000ms // success // success
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
JS highcharts實現(xiàn)動態(tài)曲線代碼示例
這篇文章主要介紹了JS highcharts實現(xiàn)動態(tài)曲線代碼示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-10-10javascript full screen 全屏顯示頁面元素的方法
要想讓頁面的某個元素全屏顯示,就像在網(wǎng)頁上看視頻的時候,可以全屏觀看一樣,該怎么實現(xiàn)呢2013-09-09JavaScript的concat方法實例代碼(數(shù)組連接)
這篇文章主要介紹了JavaScript的concat方法實例代碼,包括數(shù)組連與字符連接,需要的朋友可以參考下2023-03-03ajax實現(xiàn)加載頁面、刪除、查看詳細信息 bootstrap美化頁面!
這篇文章主要為大家詳細介紹了ajax實現(xiàn)加載頁面、刪除、查看詳細信息,利用bootstrap美化頁面,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03vue3+Pinia+TypeScript?實現(xiàn)封裝輪播圖組件
這篇文章主要介紹了vue3+Pinia+TypeScript?實現(xiàn)封裝輪播圖組件,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的朋友可以參考一下2022-07-07