Como ler uma mensagem de erro
Um erro não é um castigo. É um relatório curto. Quem lê a primeira linha e o arquivo citado resolve mais rápido do que quem apaga código até o vermelho sumir.
A primeira linha
Este programa parece inocente. pessoa existe. O problema é o valor dela.
const pessoa = null;
console.log(pessoa.nome);No navegador e no Node a mensagem é esta: TypeError: Cannot read properties of null (reading 'nome'). Traduzindo: o programa tentou ler nome de um valor que é null. Não é o console.log que quebrou. É o ponto depois de pessoa.
A pilha diz onde, de baixo para cima
Embaixo da mensagem vem a pilha. A primeira linha da pilha é o ponto em que o valor estourou. As de baixo são quem chamou essa função. Comece pela de cima. Só desça se o erro nasceu num arquivo que você não escreveu.
- Leia o tipo e a frase. O que o programa tentou fazer, e com qual valor.
- Abra o arquivo e a linha citados na primeira entrada da pilha.
- Confira o valor de verdade, com um
console.logantes da linha que quebra, ou no depurador. - Corrija essa causa. Rode de novo. Se aparecer outro erro, é outro relatório.
O que não fazer
Não envolva a linha num try/catch vazio para o erro sumir da tela. Ele continua acontecendo, só que agora sem relatório. Não troque null por {} sem saber por que a pessoa não chegou. O objeto vazio esconde o buraco e o próximo pessoa.nome vira undefined em silêncio.
Se a pessoa pode não existir, o código precisa decidir o que mostrar nesse caso. A mensagem de erro já te contou qual é o caso.
