promise详细总结
promise是JavaScript中用于处理异步操作的对象。它代表一种尚未完成但预期会在未来完成的操作结果。promise提供一种更优雅的方式来处理异步操作,解决了回调地域的问题。
1. Promise的状态
(1)pendinn(等待中):初始状态,既不是成功也不是失败。
(2)fulfilled(成功):操作成功完成。
(3)rejected(失败):操作失败
2. Promise的方法
then:用于处理成功的结果。
catch:用于处理失败的结果。
finally:无论成功过失败,都会执行的回调。
扩展:
1.promise的优势
(1)解决回调地域:通过链式调用避免过深的嵌套。(2)错误处理:通过catch方法统一处理错误。
2.promise的局限性
(1)仍然需要手动处理错误。
(2)不能取消已发起的promise。
3.最佳实践
(1)promise.all()并行处理多个异步操作。
(2)使用promise.race()处理第一个完成的异步操作
(3)在需要顺序执行的异步操作中可以使用链式调用。
(4)使用async/await简化promise的使用