Debugging JavaScript: Ferramentas Cruciais no DevTools

Imagine que você escreveu algumas linhas de JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. para animar um botão em seu site. Tudo parecia simples, mas, na hora de testar, nada funciona como o esperado. Nesse momento, entra em cena uma das etapas mais importantes no desenvolvimento: o debugging. Saber como identificar a raiz de um problema e corrigi-lo de maneira eficiente pode fazer toda a diferença no seu aprendizado e na qualidade do seu código.

Neste tutorial, vamos explorar de forma narrativa e prática como aproveitar as Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente. do Navegador para investigar, analisar e corrigir problemas no seu código JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente..

Visão Geral do Debugging🔗

O processo de debugging envolve detectar, diagnosticar e corrigir comportamentos indesejados em um programa. Em JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente., muitas vezes contamos com:

Esses recursos fazem parte das Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente. providas pelos navegadores modernos, como Google Chrome, Mozilla Firefox, Microsoft Edge, entre outros.

Explorando o Console🔗

Quando o comportamento do código não está claro, a primeira ferramenta que muitos desenvolvedores utilizam é o Console. Nesse painel, podemos:

1. Exibir valores usando funçõesFunções e Escopo no JavaScriptFunções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas. como console.log(), console.warn() ou console.error(). Por exemplo:

console.log("Valor da variável:", minhaVariavel);
console.warn("Esta é uma mensagem de aviso!");
console.error("Este é um erro de exemplo!");

2. Ler mensagens de erro emitidas pela execução do JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente.. Se o navegador detectar problemas de sintaxe ou referência, ele notifica diretamente no console.

3. Executar testes rápidos: podemos digitar comandos na própria aba Console do navegador para inspecionar ou manipular o DOMIntrodução ao DOM e Seleção de ElementosIntrodução ao DOM e Seleção de ElementosDescubra como o DOM transforma o HTML em uma árvore de objetos. Aprenda a selecionar e manipular elementos com métodos JavaScript para páginas dinâmicas. em tempo real.

Essa é a forma mais simples de debug, pois permite verificar se o valor de variáveis, parâmetrosFunções e Escopo no JavaScriptFunções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas. e retornos de funções está coerente com o esperado.

Utilizando Breakpoints🔗

Muitas vezes, apenas imprimir valores não é suficiente para encontrar a fonte de um problema mais complexo. Nesse caso, podemos definir breakpointsMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital.:

1. Abra o DevToolsEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente.: normalmente pressionando a tecla F12 ou clicando com o botão direito na página e selecionando “Inspecionar”.

2. Navegue até a aba Sources (no Chrome) ou equivalente em outros navegadores.

3. Abra seu arquivo JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente., localize a linha que deseja inspecionar.

4. Clique no número da linha para criar um breakpointMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital..

Quando seu código chegar ao breakpointMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital., ele pausará a execução naquele ponto. A partir daí, você poderá:

Esse métodoClasses e Herança em ES6+Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. passo a passo possibilita analisar cada detalhe do fluxo lógico do seu programa.

A Instrução "debugger"🔗

Além de configurar breakpointsMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital. manualmente nas ferramentas, o JavaScript tem a palavra-chave debugger. Se inserida no meio do código, ela irá forçar a parada do fluxo na linha especificada, exatamente como um breakpointMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital.. Por exemplo:

function calculaDesconto(preco, porcentagem) {
  const desconto = (preco * porcentagem) / 100;
  debugger; // A execução irá pausar aqui
  return preco - desconto;
}

Ao executar o trecho acima com o DevToolsEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente. aberto, o navegador interromperá a execução no ponto em que encontrar a instrução debugger.

Monitorando Requisições e Respostas (Network)🔗

Quando nosso código depende de requisições externas (por exemplo, para buscar dados de uma APIConsumindo APIs com Fetch e AxiosConsumindo APIs com Fetch e AxiosDescubra como integrar APIs com Fetch e Axios em JavaScript. Aprenda a fazer requisições HTTP, tratar erros e usar métodos GET e POST com exemplos práticos.), é comum precisarmos verificar se a chamada foi bem-sucedida. Na aba Network, você pode:

Se algo estiver dando errado no carregamento de recursos, a seção Network geralmente é o primeiro lugar a investigar.

Analisando Performance🔗

Se você percebe que seu site está lento ou travando, as Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente. contam com uma aba de Performance (ou Performance Monitor). Você consegue:

Esse diagnóstico detalhado oferecerá insights sobre como otimizar seu código ou o próprio layout da página.

Outras Sessões Úteis do DevTools🔗

Tabela Resumo🔗

FunçãoDescrição
ConsoleExibe mensagens, erros, avisos e possibilita executar comandos no DevTools.
BreakpointsPausa a execução do código em linhas específicas para análise detalhada.
Instrução debuggerForça uma pausa na execução sem necessidade de configurar manualmente um breakpoint.
Aba NetworkMostra requisições HTTP, status, tempos de carregamento e detalhes de resposta.
Aba PerformanceColeta e exibe métricas de desempenho (tempo de execução, renderização e uso de CPU).
Aba ApplicationMonitora Local Storage, Session Storage, service workers e cookies.

Conclusão🔗

O debugging e o uso das Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente. do Navegador são caminhos fundamentais para quem trabalha com JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. e deseja criar aplicações robustas. Com a combinação de Console, BreakpointsMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital. e demais recursos, você terá uma visão muito mais clara de como seu código se comporta em tempo real.

Sempre que você se deparar com um bug ou comportamento estranho, lembre-se: erros acontecem, e a solução pode estar a apenas alguns cliques no DevTools. Ao treinar seu olhar para analisar logs, definir breakpointsMedia Queries: Breakpoints e AbordagensMedia Queries: Breakpoints e AbordagensDescubra como utilizar media queries para criar layouts responsivos. Aprenda sobre breakpoints, mobile-first e desktop-first e otimize a experiência digital. e monitorar requisições e performance, você se tornará cada vez mais eficiente na identificação e correção de problemas em seus projetos.

A melhor forma de aprender é praticando: abra uma página HTML simples, adicione um arquivo JavaScriptIntrodução ao JavaScript e Configuração do AmbienteIntrodução ao JavaScript e Configuração do AmbienteDescubra neste tutorial narrativo como configurar seu ambiente de desenvolvimento e começar a programar em JavaScript de maneira prática e eficiente. com alguma lógica e exercite cada uma dessas etapas de debug nas Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoEditores de Código e Ferramentas de DesenvolvimentoDescubra como escolher editores de código e utilizar DevTools para melhorar a criação e depuração de páginas HTML de forma prática e eficiente.. Você perceberá rapidamente como essa habilidade faz toda a diferença no seu dia a dia como desenvolvedor!

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados