③ 如下,promise的状态一旦变为resolved,就依次调用后面每一个then指定的回调函数,每一步都必须等到前一步完成,才会执行。最后一个then方法的回调函数console.log和console.error,用法上有一点重要的区别。console.log只显示回调函数step3的返回值,console.error可以显示step1、step2、step3之中任意一个发生的错误,Promises对象的错误有传递性。其中resolve和reject它们是两个函数,由JavaScript引擎提供,不用自己部署。① 一个 Promise 对象,如果异步操作抛出错误,状态就会变为Rejected,就会调用catch方法指定的回调函数,处理这个错误。因为 Promise 的状态一旦改变,就永久保持该状态,不会再变了。将现有对象转为 Promise对象,Promise.resolve方法就起到这个作用。
暂无评论