Promise小白入门学习参考
示例代码
promiseTest(){
let promise = new Promise((resolve, reject)=>{
let random = Math.random()*10;
if(random < 5){
resolve(random);
}else{
reject(random);
}
});
promise.then((param1)=>{
console.log('resolve方法被调用,传递过来的参数random值为', param1);
return param1;
}).then((param2)=>{
console.log('resolve和第一个then方法依次调用完毕,第一个then方法的返回值被当做参数传递过来,该值为:', param2);
}).catch((param3)=>{
console.log('reject方法被调用,传递过来的参数random值为:', param3);
}).finally(()=>{
console.log('finally方法被调用,可以在这里做一些收尾清理工作.');
});
},
运行结果示例:
示例1:
resolve方法被调用,传递过来的参数random值为 0.07581926420616725
resolve和第一个then方法依次调用完毕,第一个then方法的返回值被当做参数传递过来,该值为: 0.07581926420616725
finally方法被调用,可以在这里做一些收尾清理工作.
示例2:
reject方法被调用,传递过来的参数random值为: 7.888120932811353
finally方法被调用,可以在这里做一些收尾清理工作.
注释:
finally()方法不管Promise对象最后状态如何都会执行。
参考文档 https://blog.csdn.net/Andrew_Lii/article/details/100997370
参考文档 https://blog.csdn.net/SummerJX/article/details/81948818