码迷,mamicode.com
首页 > 其他好文 > 详细

搞懂promise

时间:2018-05-06 23:30:25      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:ons   err   some   console   一个   val   eject   方式   func   

1)基本用法:

var p = new Promise(function(resolve,reject){

  //code..

  //sometime 

  resolve(somedata);//(1)

});

p.then(function resolve(data){

  console.log(data);

},

function reject(error){

  console.log(error);

}

);(2)

Promise对象的状态为,初始pendding,(1)的时候,Promise.status变成fulfilled,并把somedata赋值给PromiseValue。当调用then后,根据Promise.status对回调链进行处理。

如果调用方式为p.then(f1_resolve,f1_reject).then(f2_resolve,f21_reject);

根据f1_resolve的返回值处理下一个then。

  1. 如果返回非Promise对象,则传入下一个then的f2_resolve。
  2. 如果返回Promise对象,则对这个对象调用then方法。

2)第二种用法:

Promise.resolve(somedata).then(function resolve(){});//直接生成Promise对象,并触发resolve(somedata).

搞懂promise

标签:ons   err   some   console   一个   val   eject   方式   func   

原文地址:https://www.cnblogs.com/work-instant/p/9000230.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!