在JavaScript中,所有的代码都是单线程执行的,这就导致了其所有的网络请求,IO操作,浏览器时间等都是异步非阻塞的模式执行的,这就使得代码的执行顺序可能会超出我们的掌控. 尤其是当多个异步操作待执行,我们需要控制它的顺序的时候.这时一般的解决方法是回调,Generator,Promise或者await/async等,这里我主要记录Promise. Promise本质上是一个绑定了回调的对象,把执行代码和结果代码清晰的分离了. 一个Promise对象大致有三个状态 : pending: 初始…