Vamos revisar o código fornecido e simplificá-lo, garantindo que funcione corretamente.
Código Original
let diaDigitado = "a";
let respostaAceitavel1 = "Sábado";
let respostaAceitavel2 = "sábado";
let respostaAceitavel3 = "Domingo";
let respostaAceitavel4 = "domingo";
let diaDigitado = prompt("Qual dia da semana é hoje?");
if (diaDigitado == respostaAceitavel1) {
alert("Bom fim de semana!");
}
if (diaDigitado == respostaAceitavel2) {
alert("Bom fim de semana!");
}
if (diaDigitado == respostaAceitavel3) {
alert("Bom fim de semana!");
}
if (diaDigitado == respostaAceitavel4) {
alert("Bom fim de semana!");
}
else {
alert("Boa semana!");
}
Problemas Identificados
Repetição de Código:
- Há repetição de verificações para "Sábado" e "Domingo".
Uso do else
:
- O
else
não está associado corretamente com o último if
, resultando em comportamento inesperado.
Verificação de Várias Condições:
- O trecho comentado sobre o uso de
or
não é válido em JavaScript.
Correção e Simplificação
Podemos melhorar o código utilizando um array para armazenar as respostas aceitáveis e o método includes
para verificar se o dia digitado está nesse array. Isso torna o código mais limpo e eficiente.
Código Corrigido
// Pergunte ao usuário qual é o dia da semana.
// Se a resposta for "Sábado" ou "Domingo", mostre "Bom fim de semana!".
// Caso contrário, mostre "Boa semana!".
let diaDigitado = prompt("Qual dia da semana é hoje?");
// Array com respostas aceitáveis para fim de semana
let respostasAceitaveis = ["Sábado", "sábado", "Domingo", "domingo"];
// Verifica se o dia digitado está no array de respostas aceitáveis
if (respostasAceitaveis.includes(diaDigitado)) {
alert("Bom fim de semana!");
} else {
alert("Boa semana!");
}
Explicação das Correções
Array de Respostas Aceitáveis:
- Usamos um array
respostasAceitaveis
para armazenar todas as formas válidas de "Sábado" e "Domingo".
Verificação com includes
:
- O método
includes
é utilizado para verificar se o diaDigitado
está dentro do array de respostas aceitáveis, simplificando a lógica de verificação.
Uso Correto do else
:
- A estrutura
if-else
garante que apenas uma mensagem será exibida com base na condição avaliada.
Resultado Final
Com essas mudanças, o código se torna mais legível, eficiente e fácil de manter:
// Pergunte ao usuário qual é o dia da semana.
// Se a resposta for "Sábado" ou "Domingo", mostre "Bom fim de semana!".
// Caso contrário, mostre "Boa semana!".
let diaDigitado = prompt("Qual dia da semana é hoje?");
// Array com respostas aceitáveis para fim de semana
let respostasAceitaveis = ["Sábado", "sábado", "Domingo", "domingo"];
// Verifica se o dia digitado está no array de respostas aceitáveis
if (respostasAceitaveis.includes(diaDigitado)) {
alert("Bom fim de semana!");
} else {
alert("Boa semana!");
}