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?

Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras


Excesso de barulho dentro do seu gabinete, principalmente logo que você o liga, pode ser sintoma de problemas nas ventoinhas, que podem precisar ser limpas ou trocadas. Entre em contato com um técnico de sua confiança e verifique isso o quanto antes.


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.


A empresa Universal City Studios, detentora dos direitos autorais do King Kong, processou a Nintendo logo após o lançamento de Donkey Kong, pois segundo ela, o game violava os seus direitos. Ela venceu o processo e recebeu da Nintendo uma indenização de quase 2 milhões de dólares.


O filme Mortal Kombat, inspirado no jogo de mesmo nome, faturou 23 milhões de dólares apenas no fim de semana de estreia nos EUA. Ainda sobre este título de sucesso, outra cifra que impressiona é o faturamento ao longo do primeiro ano: 1 bilhão de dólares no mundo todo.