Promise基础整理

1、简介

        支持链式调用,将异步操作以同步操作的流程表达出来。

2、目的

        解决前端回掉地狱问题:

        回调地狱:

                1)回调函数嵌套调用,外部回调函数异步执行的结果是嵌套的回调函数执行的条件;

                 2)不便于阅读/异常处理;

                 3)解决方法: promise链式调用;

                 4)终极方法:async/await

3、使用场景

        1)请求处理;

        2)普通函数处理

4、三种状态

        1)Pending 创建Promise对象时的初始状态;

        2)Fulfilled 成功;

        3)Rejected 失败

5、Promis.all和Promise.race对比

        1)all是Promise的状态都为成功才表示成功;

        2)race是Promise的状态有一个成功,就表示成功 

6、Promise缺点

        1)无法取消Promise,一旦新建它就会立即执行,无法中途取消;

        2)如果不设置回调函数,Promise内部抛出的错误,不会反应到外部;

        3)当处于Pending状态时,无法得知目前进展到哪一阶段(是开始还是完成)。

猜你喜欢

转载自blog.csdn.net/qq_42780987/article/details/121405034