承诺对象——浅析

  

ES 6中承诺对象的出现为了解决JS异步编程的问题。

<代码> Promise.all

承诺对象的三种状态:

,,,, 1。完成- - - - - -成功

,,,, 2.拒绝- - - - - -失败

,,, 3。等待——承诺对象实例创建的初始状态


承诺对象的两个重要方法:- - - - -解决(成功),,拒绝(失败)

,<代码>解决方法可以使承诺对象的状态改变成成功,同时传递一个参数用于后续成功后的操作。

<代码> ,拒绝方法则是将承诺对象的状态改变为失败,同时将错误的信息传递到后续错误处理的操作。

function  helloWorld (准备好),{,,,      ,,,,,,,return  new 承诺(function (解决,,拒绝),{,,,,,,,   ,,,,,,,if (准备好),{   ,,,,,,,,,,,解决(“Hello 世界!”);,,//成功时调用的参数   ,,,,,,,},{else    ,,,,,,,,,,,拒绝(“Good 再见!”);,,,,//失败时调用的参数   ,,,,,,,}   ,,,});   }      helloWorld(真)(function (消息),{   ,,,警报(消息);   },,function (错误),{   ,,,警报(错误);   });


然后方法:<代码>然后(onFulfilld onRejected)


 function  printHello (准备好),{,,,
  
  ,,,,return  new 承诺(function (解决,,拒绝),{,,,,,,,
  ,,,,,,,,if (准备好),{
  ,,,,,,,,,,,解决(“Hello”);
  ,,,,,,,},{else 
  ,,,,,,,,,,,拒绝(“Good 再见!”);
  ,,,,,,,}
  ,,,});
  }function  printWorld  (), {
  ,,,警报(“世界”);
  }function  printExclamation  (), {
  ,,,警报(“!”);
  }
  
  printHello(真正的)
  ,,,不要犹豫(函数(消息){
  ,,,,,,,警报(消息);
  ,,,})
  ,,,不要犹豫(printWorld)
  ,,,不要犹豫(printExclamation); 


承诺对象——浅析