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在现在的开发中使用率算是最高的,而且你面试前端都会考这个对象,大家一定要掌握好
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。