# Try-Catch-Finally Statements no JavaScript

> Neste drop abordo o funcionamento das declarações Try-Catch-Finally no JavaScript.

- Canonical: https://betomuniz.com/blog/try-catch-finally-statements-no-javascript
- Published: 2020-09-26
- Updated: 2026-04-21T17:44:00.000Z
- Language: pt
- Tags: JavaScript

---

`try { } catch (e) {} finally { }` no JavaScript nos permite:

**testar** (`try`) determinada lógica a fim de executá-la com **sucesso** e;

Em caso de **exceção** (`catch`) expor o **erro** (`e`) e oferecer um caminho alternativo a exceção inicialmente projetada e;

Definir uma **rotina padrão** (`finally`) independente de sucesso ou exceção.

Recentemente, o valor `e` da declaração `catch` passou a ser [opcional](https://caniuse.com/?search=try%20catch%20optional) na maioria dos browsers.

```javascript
try {
  if (randomVar) {
    console.log("It works!");
  } else {
    throw new Error("Ops!!!");
  }
} catch (e) {
  console.error("My Error is:", e);
} finally {
  console.log("All try-catch-finally statements are done");
}
```
