let storeOpen;
switch (storeOpen) { case 1 && 2 && 3 && 4 && 5: return '9h às 18h'; case 6 && 0: return '10h às 14h'; }
let storeOpen;
switch (storeOpen) { case 1 && 2 && 3 && 4 && 5: return '9h às 18h'; case 6 && 0: return '10h às 14h'; }
Oi, Helena! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.
No seu exemplo, a lógica dentro do switch
não funciona como esperado porque o case 1 && 2 && 3 && 4 && 5
será interpretado como case 5
, já que o &&
avalia apenas o último valor como verdadeiro. Para funcionar corretamente, o ideal seria usar uma estrutura condicional com if
ou separar os casos individualmente no switch
.
Uma dica interessante para o futuro é usar o includes()
com um array, o que torna o código mais limpo:
let diaSemana = new Date().getDay();
if ([1, 2, 3, 4, 5].includes(diaSemana)) {
console.log('9h às 18h');
} else if ([0, 6].includes(diaSemana)) {
console.log('10h às 14h');
}
Esse código verifica se o dia atual está dentro dos dias úteis (1 a 5) ou fim de semana (0 e 6), e exibe o horário da loja.