ES6:何为Promise?

Posted hxw1024

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6:何为Promise?相关的知识,希望对你有一定的参考价值。

1、promise的起源

     在之前,我们处理异步网络请求的时候,往往会采用这样的写法:

技术图片

再复杂一点,我们需要在请求完第一个api后,再去请求第二个接口,那么就变成这样了:

技术图片

基于此,在需求增加的情况下,我们很可能会面临一场灾难性的到来--回调地狱。

技术图片

造成的后果是:

1、代码庞杂臃肿,可读性极差

2、耦合度过高,难以进行后期的维护

3、代码复用性差,变相让代码更加臃肿

4、容易滋生bug,而且需要在回调里处理异常

这时候,怎么解决这种问题呢?我们希望可以以一种更加友好的方式进行代码的编写,promise规范由此便诞生了。

2、什么是promise

promise是异步编程的一种解决方案。目前业内实现解决回调的地狱的有Q和bluebird。

技术图片

以上是关于ES6:何为Promise?的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript Promise小结

带你快速入门ES6中的Promise对象

ES6_Promise

ES6 Promise Javascript

ES6 promise时序,本质,常见错误

ES6中的Promise