5
respostas

Bom dinal de semana para qualquer dia =(

Alguém ai pode me ajudar?

diaDaSemana = prompt ('Digite o dia da semana?');
if ( diaDaSemana == 'Sábado' || 'Domingo') {
    alert("Bom fim de semana!");
} else {
    alert("Boa semana")
}
5 respostas

Oi, esqueceu de declarar a variável.

let diaDaSemana = prompt('Digite o dia da semana?');

Não adiantou, Nadine. =( Ainda com o mesmo problema.

Bem, o que pode ocorrer também é de você estar ali pedindo que o usuário escreva "Sábado" mas ele pode acabar escrevendo "sábado", e isso não é a mesma coisa.

O que voce pode fazer é isso aqui:

let diaDaSemana = prompt ("Que dia da semana é hoje?");
if (diaDaSemana.toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g, "") === "sabado" || diaDaSemana.toLowerCase() === "domingo") 
{
    alert("Ótimo fim de semana");
} else{
    alert("Boa semana!")
}

Onde a função .toLowerCase() vai pegar o que for escrito no prompt e colocar todas as letras em minuscula (poderia ser .toUpperCase() que ira transformar todas as letras em maiuscula). Resolve 1 problema.

Pensei também que o sábado algumas pessoas podem escrever com acento ou sem acento, dessa forma procurei como retirar acentos no google e me deu essa função: .normalize('NFD').replace(/[\u0300-\u036f]/g, ""), dessa forma retiro mais um possível erro.

Pode tentar sem a função de tirar os acentos que já funciona. Tenta e me fala.

Obs: Essa foi minha solução.

Mas agora que rodei aqui seu codigo, percebi. Tinha que colocar após o || novamente a váriavel e fazer a comparação com domingo. Dessa forma rodária se você colocasse exatamente como escreveu. A primeira letra maiuscula e com acento.

Nadine, muito obrigada... Eu coloquei o || porque dei uma pesquisa por cima aqui e aparece como ele sendo "ou", eu criei uma lógica que acho que nem rola rs De toda forma, ainda não sei nada sobre esse trecho aqui "toLowerCase().normalize('NFD').replace". Sou bem iniciante mesmo. De toda forma, muito obrigada. Eu vi aqui que tem resolução, vou ver o que posso fazer.