promise简单应用

promise执行多步操作非常好用,那我们就来模仿一个多步操作的过程,那就以吃饭为例吧。要想在家吃顿饭,是要经过三个步骤的。

洗菜做饭。
坐下来吃饭。
收拾桌子洗碗。

这个过程是有一定的顺序的,你必须保证上一步完成,才能顺利进行下一步。我们可以在脑海里先想想这样一个简单的过程在ES5写起来就要有多层的嵌套。那我们现在用promise来实现。

 1  let state=1;
 2     function step1(resolve,reject){
 3         console.log('1.开始-洗菜做饭');
 4         if(state==1){
 5             resolve('洗菜做饭--完成');
 6         }else{
 7             reject('洗菜做饭--出错');
 8         }
 9     }
10     function step2(resolve,reject){
11         console.log('2.开始-坐下来吃饭');
12         if(state==1){
13             resolve('坐下来吃饭--完成');
14         }else{
15             reject('坐下来吃饭--出错');
16         }
17     }
18     function step3(resolve,reject){
19         console.log('3.开始-收拾桌子洗完');
20         if(state==1){
21             resolve('收拾桌子洗完--完成');
22         }else{
23             reject('收拾桌子洗完--出错');
24         }
25     }
26     new Promise(step1).then(function(val){
27         console.log(val);
28         return new Promise(step2);
29     }).then(function(val){
30         console.log(val);
31         return new Promise(step3);
32     }).then(function(val){
33         console.log(val);
34         return val;
35     });
View Code

Promis在现在的开发中使用率算是最高的,而且你面试前端都会考这个对象,大家一定要掌握好
原文地址:https://www.cnblogs.com/mahmud/p/11711711.html