🌟 Introduzido no ES2018, Promises agora podem usufruir de um novo recurso para controlar o fluxo de operações através do método .finally().
👉 A proposta do Promise.finally() é executar operações independentemente da execução dos métodos .then() e .catch().
⚡️ Essa proposta é muito semelhante com a abordagem try {} catch {} finally {}, a diferença é que a declaração finally {} consegue retornar valores e Promise.finally() não, Promise.finally() consegue retornar apenas exceções via throw.
let loading = true
fetch('https://...')
.then((response) => { ... })
.catch((error) => { ... })
.finally(() => { loading = false })
😉 Legal, né?