1
resposta

[Bug] Deu um bug no meu código. onde errei?

alert ('Qual o dia da semana?');
let diadaSemana = 'Sábado';
let diadaSemana1 = 'Domingo';
console.log (diadaSemana)
let resposta = prompt('Escolha entre Domingo á Sábado!');
// se o dia da semana for Sábado ou Domingo
if (resposta == diadaSemana){
alert ('Bom final de semana :)');

}if (resposta == diadaSemana1){
alert ('Tenha um excelente Domingo!');
}
else {
alert ('Boa semana!')
}

Garanta sua matrícula hoje e ganhe + 2 meses grátis

Continue sua jornada tech com ainda mais tempo para aprender e evoluir

Quero aproveitar agora
1 resposta

Boa tarde, amigo.

O problema está mesmo na estrutura dos ifs.

No seu código original, o primeiro if é independente do segundo. Isso faz com que, mesmo quando o primeiro seja verdadeiro, o programa continue executando o segundo — que será falso — e, por isso, acabe exibindo também o else com a mensagem “Boa semana!”.

Para resolver isso, basta encadear as condições com else if, assim:

if (resposta == diadaSemana) {
  alert('Bom final de semana :)');
} else if (resposta == diadaSemana1) {
  alert('Tenha um excelente Domingo!');
} else {
  alert('Boa semana!');
}

Dessa forma, toda a cadeia de condições fica interligada, e o código funciona corretamente.