Promise 和async学习总结

1.promise 有三种状态 pending rejected fulfilled 状态只能从pending->rejected 或者pending ->fulfilled 状态一经改变不会再变 

2.promise.then .catch .finally 属于微任务,可以链式调用  可以多次调用 多次调用的value相同

3.promise.resolve() 相当于创建一个状态是fulfilled的promise

相当于 

new Promise(resolve,reject=>{

    resolve()

})

4.promise.reject() 相当于 创建一个状态为rejected的promise

5.promise.then .catch .finally 都会返回一个promise 

如果定义的时候返回的就是一个promise  隐式返回的promise的状态由返回的promise的状态决定

6.promise.then() 可以不传参数 或者参数不是函数的情况下 会发生结果透传

7.promise.then() 的第二个参数等同于 promise.catch


async  

1.async 里面的await 相当于new Promise() await 后面的代码相当于 .then()里面的代码

2.async 后面如果跟的是一个promise 会等待promise状态改变后继续执行

3.async函数的返回值是promise  如果返回的不是promise 也会被包装成promise

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容