Strings, erros e depuração
Transforme texto e use o console para encontrar uma suposição errada.
- Usar métodos de string e template strings
- Rastrear um programa com console.log e ler um erro
- Capturar um erro recuperável sem esconder um bug
Os aplicativos web limpam a entrada do usuário o tempo todo: tiram os espaços das pontas, comparam um valor normalizado e mostram uma mensagem amigável. Os métodos de string devolvem novas strings; não modificam a original. Uma template string usa crases e ${value} para combinar texto e dados.
1const raw = " Ada ";
2const name = raw.trim().toLowerCase();
3console.log(name);
4console.log(raw.length);ada 7
Quando o código falha, leia o primeiro erro útil e a linha que ele aponta. Pergunte: o que eu esperava que este valor fosse? Use console.log ou um breakpoint no depurador para inspecioná-lo. Não envolva cada linha num try/catch: trate só os erros que você consegue explicar e dos quais consegue se recuperar.
1function readName(text) {
2 try {
3 return JSON.parse(text).name ?? "friend";
4 } catch {
5 return "friend";
6 }
7}
8console.log(readName(JSON.stringify({ name: "Ada" })));
9console.log(readName("broken"));Ada friend
Principais conclusões
Métodos de string como
trimetoLowerCasedevolvem novos valores.Inspecione os valores reais e o local dos erros quando um programa surpreender você.
Capture falhas esperadas, como um JSON inválido; não engula em silêncio problemas desconhecidos.
Quiz da aula
4 perguntas · aprovação com 3 acertos · até 50 XP
Ao passar, você conclui a aula e mantém sua sequência. As perguntas erradas voltarão em sessões de revisão.
Pratique: escreva código em JavaScript
Escreva o programa, execute-o com os casos de teste e use o retorno para desenvolver suas habilidades em JavaScript.
Limpe o nome de um cadastro
Tire os espaços das pontas da entrada. Se ela estiver vazia, imprima Name required. Caso contrário, imprima Welcome, NAME!, com a primeira letra maiúscula e as demais minúsculas.
- Maiúsculas e minúsculas misturadas
- Vazio
O JavaScript roda em um frame isolado do navegador, com limite de 1,5 segundo. A entrada fica disponível na variável de string input.
Dúvidas sobre esta lição
Travou em algum ponto? Pergunte. Descobriu algo? Compartilhe. Explicar também é uma ótima forma de aprender.
Carregando publicações…