Promise是在ES6中用来解决回调地狱最好的方法。
Promise是一个构造函数,我们可以创造他的实例对象,new出来的Promise实例对象,代表一个异步操作。
在Promise.prototype原型对象上上包含了一个,then()方法,我们可以new Promise实例对象通过原型链的方式来使用.then()方法
.then()方法是用来预先指定成功和失败的回调函数,我们可以使用他来提前为异步操作指定回调函数
.then(result=>{} ,error=>{})
由于node官方提供的fs模块只支持以回调函数的方式来读取文件,不支持Promise的调用方式。因此需要先安装then-fs第三方包,来支持这个操作。
.then()方法特性:如果在上一个.then()方法中返回了一个新的Promise实例对象,那么我们可以继续使用.then()方法来进行链式调用,就是只要是Promise实例对象,就可以一直.then(),来解决回调地狱问题
.catch()捕获前面链式调用中的错误
.catch((err)=>{
console.log(err.message)
})
Promise.all()方法:发起并行的Promise异步操作,等所有的异步操作全部结束之后才会执行.then()。
Promise.all(异步操作对象).then()
Promise.race()方法:这个和all相反,这个只要其中一个完成操作,就会立刻执行下一步操作。
标签:异步,对象,实例,Promise,操作,方法 From: https://www.cnblogs.com/camboy/p/16648009.html