1
resposta

[Dúvida] Prevendo possíveis bugs

Olá! Enquanto resolvia os desafios da aula 2 me surgiu uma dúvida. No desafio 1, sobre os dias de semana. O usuário pode não digitar exatamente do jeito que digitamos no código. Por exemplo, ele pode digitar com letra minúscula, sem o acento, etc. Existe alguma maneira de se sobrepor a esse erro, fazendo com que o programa entenda que é a mesma informação?

1 resposta

Oi Sarah,

Sim, existem algumas formas de lidar com essas variações na entrada do usuário 🤔.

Uma abordagem comum é converter a entrada do usuário para letras minúsculas usando o método toLowerCase().

Isso garante que a comparação seja feita sem distinção entre maiúsculas e minúsculas.

Além disso, você pode remover acentos e caracteres especiais para padronizar ainda mais a entrada.

Uma forma de fazer isso é usando expressões regulares para substituir esses caracteres por suas versões sem acento.

Veja um exemplo prático:

let diaDigitado = "Sábado";
let diaFormatado = diaDigitado.toLowerCase(); // Converte para minúsculas: "sábado"

/*
normalize('NFD'): Separa a letra base do acento
replace(/[\u0300-\u036f]/g, ""): Expressão regular que remove todos os caracteres diacríticos (acentos)
*/
diaFormatado = diaFormatado.normalize('NFD').replace(/[\u0300-\u036f]/g, ""); // Remove acentos: "sabado"

if (diaFormatado === "sabado") {
  console.log("É sábado!");
}

Nesse exemplo, a string "Sábado" é convertida para "sabado", permitindo uma comparação mais flexível.

🎓 Para saber mais: String.prototype.normalize()

Continue praticando e explorando novas soluções 💪!

tux matrix Caso este post o tenha ajudado, marque-o como solucionado ☑️. Bons Estudos! 🤓