溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解ES6 Promise對象then方法鏈式調用

發布時間:2020-09-30 00:40:16 來源:腳本之家 閱讀:354 作者:不知不問 欄目:web開發

promise俗稱鏈式調用,它是es6中最重要的特性之一

簡單的說可以不停的then調用嵌套在調用(異步之后,鏈式調用方式執行回調),這種操作方式稱為promise

then()方法的作用是Promise實例添加解決(fulfillment)和拒絕(rejection)狀態的回調函數。then()方法會返回一個新的Promise實例,所以then()方法后面可以繼續跟另一個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)
  );
// 連續
// success
// success again

但是前一個then()方法中的回調函數中又可能返回一個Promise實例,這時候后面一個then()方法中的回調函數會等前一個Promise實例的狀態發生變化才會調用。

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女