JavaScript · Essencial · Inglês · Técnico
try catch
Estrutura que executa um bloco e, se ele lançar uma exceção, desvia para o catch, onde o erro é tratado. O finally opcional roda sempre, haja erro ou não.
Onde usar
Aparece em chamadas de rede, parse de JSON e await. Em code review, apontam-se catch vazio, que engole erros, e blocos try enormes.
Em código
try {
JSON.parse('{ ruim');
} catch (e) {
console.log(e.name); // 'SyntaxError'
} finally {
console.log('sempre roda');
}Exemplos
Wrap the JSON.parse in a try catch, the input may be broken.
Embrulhe o JSON.parse num try catch, a entrada pode estar quebrada.
An empty catch swallows the error and hides the bug.
Um catch vazio engole o erro e esconde o bug.
Cuidado
Esperar que o try catch capture erro de callback assíncrono ou de promise sem await: ele só pega o que ocorre dentro do bloco, de forma síncrona.
Sinônimos
tratamento de exceção