Oii, tudo bem?
Entendo perfeitamente a sua dúvida, André. É muito comum passar por isso logo no início, pois o computador é extremamente literal: para ele, "Sábado" e "sábado" são textos completamente diferentes devido ao valor de cada caractere na memória.
Pra resolver esse problema e tornar seu código mais inteligente, você pode tratar o texto que o usuário digita antes de fazer a comparação.
A solução com toLowerCase() ou toUpperCase():
O JavaScript oferece funções prontas para transformar todo o texto em letras minúsculas ou maiúsculas. Assim, não importa se o usuário digitar "SÁBADO", "sábado" ou "Sábado", o resultado final será padronizado.
let diaDaSemana = prompt('Qual é o dia da semana?');
let diaFormatado = diaDaSemana.toLowerCase();
if (diaFormatado == 'sábado' || diaFormatado == 'sabado') {
alert('Bom fim de semana!');
} else if (diaFormatado == 'domingo') {
alert('Bom fim de semana!');
} else {
alert('Boa semana!');
}
O que mudou aqui?
- Padronização: O método
.toLowerCase() converte tudo o que foi digitado para minúsculo. Se o usuário escreveu "SÁBADO", a variável diaFormatado guardará "sábado". - Comparação Segura: Note que agora comparamos com
'sábado' (em minúsculo) no if. - Dica Extra: Aproveitei para incluir uma verificação para "sabado" sem acento, usando o operador
|| (que significa "ou"), pois muitos usuários esquecem a acentuação ao digitar rápido.
Espero ter ajudado.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!