promise相关的所有知识
-
定义:Promise是一种异步编程的解决方案,它表示一个异步操作的最终完成(或失败)及其结果值。
-
三种状态:Promise有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。
-
then方法:Promise对象有一个then方法,用于指定该Promise对象状态改变时的回调函数。
-
catch方法:Promise对象有一个catch方法,用于指定该Promise对象状态为rejected时的回调函数。
-
Promise.all方法:Promise.all方法用于将多个Promise对象包装成一个新的Promise实例。
-
Promise.race方法:Promise.race方法用于将多个Promise对象包装成一个新的Promise实例,只要有一个Promise对象状态改变,新的Promise实例就会改变状态。
-
Promise.resolve方法:Promise.resolve方法用于将一个非Promise对象转换为Promise对象。
-
Promise.reject方法:Promise.reject方法用于将一个值或者错误对象转换为一个rejected状态的Promise对象。
-
Promise.prototype.finally方法:Promise.prototype.finally方法用于指定不管Promise对象最终状态如何,都会执行的回调函数。
-
异常处理:Promise对象的状态一旦改变,就不会再变化。因此,Promise对象的异常处理要提前处理,否则无法捕获异常。
-
Promise的优点:Promise可以解决回调函数嵌套的问题,使代码更加清晰、简洁易懂;Promise可以更好地处理异步操作的结果,避免回调函数的传递错误等问题。
-
Promise的缺点:Promise不能取消,一旦新建就会立即执行,无法中途取消;Promise如果不设置回调函数,Promise内部抛出的错误不会反应到外部;Promise的错误处理机制不够完善
原文地址: https://www.cveoy.top/t/topic/cZoS 著作权归作者所有。请勿转载和采集!