Até agora, escrevemos códigos assumindo que tudo sempre vai dar certo. Mas, na vida real, erros acontecem — e o JavaScript precisa saber como reagir a eles.

Nesta aula, vamos aprender a capturar erros e lidar com eles de forma controlada usando try, catch e finally.

🎯 Objetivo da aula

Ao final desta aula, você será capaz de:

  • Entender o que é um erro em JavaScript
  • Usar try para testar um bloco de código
  • Capturar erros com catch
  • Executar código sempre com finally
  • Evitar que a aplicação quebre

O que é um erro em JavaScript?

Um erro acontece quando o JavaScript encontra algo que não consegue executar.

Exemplo simples:

 console.log(nome); 

Se a variável nome não existir, o JavaScript lança um erro e interrompe a execução.

Sem tratamento de erro, a aplicação pode parar completamente.

Conhecendo o try/catch

O try permite que você teste um bloco de código.

Se ocorrer um erro, o JavaScript pula para o catch, em vez de quebrar a aplicação.

 
        try 
        { 
          console.log(nome); 
        } catch (erro) 
        { 
          console.log("Ocorreu um erro"); 
        } 
 
          console.log("Ocorreu um erro"); 
          // Saída será "Ocorreu um erro" 

Mesmo com erro, o código continua rodando.

Entendendo o objeto de erro

O catch recebe um objeto com informações sobre o erro.

 
          try 
          { 
            console.log(nome); 
          } 
          catch (erro) 
          { 
            console.log(erro.message); 
          } 
 
            console.log(erro.message); 
            // Saída será algo como "nome is not defined" 

Isso ajuda muito na depuração do código.

Quando usar try/catch?

Use try/catch quando:

  • Algo pode falhar
  • Você quer evitar que a aplicação quebre
  • Precisa tratar erros de forma elegante

O bloco finally

O finally é executado sempre, independentemente de erro ou não.

Ele é muito usado para limpeza, logs ou encerramento de processos.

 
              try 
              { 
                console.log("Executando código"); 
              } 
              catch (erro) 
              { 
                console.log("Erro"); 
              } 
              finally 
              { 
                console.log("Finalizando"); 
              } 
 
                console.log("Executando código"); 
                // Saída será "Executando código" 
                console.log("Finalizando"); 
                // Saída será "Finalizando" 

Exemplo real: função com validação

Vamos criar uma função que exige um número:

 
                function dividir(a, b) 
                { 
                  try { if (b === 0) 
                  { 
                    throw new Error("Divisão por zero não é permitida"); 
                  }
                  return a / b;
                } catch (erro) 
                {
                  console.log(erro.message);
                } finally 
                {
                  console.log("Operação finalizada");
                }
              }
              dividir(10, 2);
              dividir(10, 0);
 
  dividir(10, 2); 
  // Saída será 5 dividir(10, 0); 
  // Saída será "Divisão por zero não é permitida" 
  // Depois: "Operação finalizada" 

throw: lançando seus próprios erros

Você pode criar erros manualmente usando throw.

 
    throw new Error("Algo deu errado"); 

Isso é muito útil para validações e regras de negócio.

Criar erros claros ajuda muito quem vai manter o código depois.

Resumo da aula para nunca mais esquecer

  • try testa um bloco de código
  • catch captura erros
  • finally executa sempre
  • Erros podem ser criados com throw
  • Evita que a aplicação quebre

Na próxima aula, vamos usar tudo isso junto com async e await, tratando erros assíncronos da forma correta.


HARDWARE

Entendendo o seu computador

O que há dentro do meu computador?

Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.

  • Gabinetes

  • Placas-Mãe

  • Processadores

  • Memória

  • Fontes

  • Drives Ópticos

  • Discos Rígidos

  • SSD

  • Placas de Som

  • Placas de Vídeo

Você Sabia?

O épico jogo River Raid, do Atari, foi desenhado e boa parte de sua programação foi feita por uma mulher: Carol Shaw, uma excelente programadora e funcionária da Activision em 1982. Saiba mais sobre a história deste incrível jogo, aqui.


O título Space Invaders, lançado em 1980, fez tanto sucesso em todo o mundo que as pessoas compravam o console Atari apenas para poderem jogá-lo em casa. Saiba mais sobre este incrível título clicando aqui.


Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.


O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!


Desde o seu lançamento, em 1985, o fantástico jogo Tetris vende pelo menos 70 milhões de unidades por ano em todo o mundo! Os dados são oficiais e fornecidos pela THQ, uma das distribuidoras do título.