Promise.prototype.finally()
是 ES10 中新增的方法,它是一个实例方法,用于在 Promise 执行结束后,无论成功或失败,都会执行一段代码。本文将介绍该方法的详细用法及示例,帮助读者更好地理解和掌握该方法。
语法
Promise.prototype.finally(onFinally)
onFinally
: 一个回调函数,当 Promise 执行结束后,无论成功或失败,都会执行该函数。
返回值
返回一个新的 Promise,该 Promise 与原 Promise 的状态和值保持一致。
示例
-- -------------------- ---- ------- --- ------- - --- ----------------- ------- -- - ------------- -- - ---------------- ----------- -- ------ --- ------- -------------- -- - -------------------- -- -------------- -- - ------------------- -- ----------- -- - -------------------- ---------- ---
上述代码中,我们创建了一个 Promise,1 秒后成功地 resolve 了一个字符串。然后我们使用 then
和 catch
方法分别处理 Promise 成功和失败的情况,并使用 finally
方法在 Promise 执行结束后输出一条信息。
指导意义
finally
方法的出现使 Promise 的语法更加完善,它提供了一种更加简便的方法来执行 Promise 执行结束后的操作。在实际开发中,我们通常需要在 Promise 执行结束后做一些清理工作,例如关闭数据库连接或者释放资源等,这时候 finally
方法就能够方便地帮助我们实现这些操作。
同时需要注意的是,finally
方法返回的是一个新的 Promise,因此它也可以作为 Promise 链中的一个节点,与 then
和 catch
方法一样,用于处理 Promise 的状态和值。在使用 finally
方法时,我们应该注意其返回值,并根据需要进行处理。
结论
本文对 ES10 中的 Promise.prototype.finally() 方法进行了详细介绍,并提供了一个示例代码。通过本文的学习,读者可以更好地理解和掌握该方法,同时也能够在实际开发中更加方便地使用 Promise。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675ba163a4d13391d8f56d09