Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Dúvida - Módulo 02, Alua 09 - Desafio: Hora da pratica, Exercício 01

let semana = prompt("Digite o dia da semana:");

if (semana == "Sábado" || semana == "Domingo"){
    alert("Bom final de semana!");
}
else{
    alert("Boa semana!");
}

Saudações pessoal... Por favor, existe uma forma de ignorar a inicial maiúscula do sábado por exemplo? Pois pode se dar o caso que eu digite "sábado" e não "Sábado" e o código ignora a condição, indo para o bloco seguinte, dando a mensagem "Boa semana".

3 respostas
solução!

Olá Edivaldo, sim existem diversas formas, umas mais elegantes e outras nem tanto :)

Segue um exemplo funcional independente de digitar em maiúsculas ou minúsculas.

let semana = prompt("Digite o dia da semana:");

if (semana.toLowerCase()  === "sábado" || semana.toLowerCase() === "domingo"){
    alert("Bom final de semana!");
}
else{
    alert("Boa semana!");
}

A função toLowerCase() foi utilizada para converter o valor da variável semana em minúscula antes de fazer a comparação.

Olá Edivaldo, uma forma possível seria garantir que ambas strings estejam sempre na mesma condição de casing, usando um método que converta as strings para uppercase. Por exemplo, abaixo usei o .toUpperCase()

const sabado = "Sábado";
const domingo = "Domingo";

let semana = prompt("Digite o dia da semana:");

if (semana.toUpperCase() == sabado.toUpperCase() || semana.toUpperCase() == domingo.toUpperCase()){
    alert("Bom final de semana!");
}
else{
    alert("Boa semana!");
}

Essa é uma solução, bem basiquinha, com certeza devem existir outras, e até mesmo essa pode ser melhorada.

Muito obrigado pela ajuda @Wenderson Ferreira e @Andre Zorek.