欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2018年10月20日 14:22:40   作者:不知不問  
這篇文章主要介紹了詳解ES6 Promise對象then方法鏈式調用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

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

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

相關文章

最新評論