promise是一种解决异步编程的方案,他比传统的回调函数加事件更加合理和强大,promise除了使用它的异步操作外,还能在promise项目中解决地狱回调问题。
promise一共有两个特点:
对象不受外界影响,并且promise一共有三个状态,分别是进行中(pending),成功(fulfilled),失败(rejected),只有异步操作的结果,可以决定是哪一种状态,任何其他的操作都无法改变这个状态,一旦状态改,就不会在变,任何时候都可以得到这个结果,promise的状态改变只有两种可能要么成功,要么失败。
promise实例化后,还会有一个回调函数,这个函数有两个参数,分别是resolve和reject,当状态发生变化的时候,如果是成功则会通过resolve将成功结果返回出去,如果失败,那么可以通过reject将错误的信息也返回出去,我们可以通过.then方法接收成功的结果,通过.catch接收失败的结果
async的理解 下面一段代码: