1. 程式人生 > >typescript promise非同步函式操作

typescript promise非同步函式操作

promise最主要的思想就是對非同步操作結果的一個承諾,承諾的狀態有如下幾種:


  • 1.pending: promise 的初始化狀態
  • 2.fulfilled:代表非同步操作成功
  • 3.rejected:代表非同步操作失敗


注意:當一個promise處於 fulfilled或rejected狀態後,它的狀態就永遠不可更改了。


function foo(){
  return new Promise ((fulfill,reject) => {

    try{
      fulfill("success");
    }catch(error){
      reject("fail");
    }


  });
}


//呼叫promise 方法
this.foo().then(res =>{
       console.info(res);
    }).catch(err =>{
        console.error(err);
      }


    );


/**
 *正常在promise中並不需要 try...catch ,因為promise會在異常丟擲的時候
 *自動進入 rejected狀態。
 *上段程式碼中聲明瞭一個foo的函式,返回一個promise.
 *一個promise包含一個then方法,它接受一個函式,在promise被fulfilled後呼叫。
 *promise還提供了一個名為catch的方法,它在promise被rejected之後被呼叫
 **/