1
resposta

Resolução Exercício 4 - Condicionais JS

function informarHorario(dia,callback){
    console.log('Verificando o horário...')
    const resultado = callback(dia)
    console.log(resultado)
}

const verificarFuncionamento = (dia) => {
    if(dia > 6 || dia < 0){
        return 'Informe um dia válido (0-6)'
    }
    switch(dia){
        case 1:
        case 2:
        case 3:
        case 4:
        case 5:
           return 'A loja está aberta no horário normal: 9h às 18h.';
        default:
           return 'A loja está aberta em horário especial: 10h às 14h.'
    }
}

informarHorario(2, verificarFuncionamento)
informarHorario(0, verificarFuncionamento)
informarHorario(12, verificarFuncionamento)
1 resposta

Oi, Gabriel! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Chamou atenção o uso de callback para separar a lógica de verificação do horário, além do switch bem organizado para diferenciar dias da semana e fim de semana. Sua solução deixa o código fácil de ler e testar.

Uma dica interessante para o futuro é usar um objeto para mapear horários, reduzindo condicionais. Veja este exemplo:


const horarios = {
  normal: 'A loja está aberta no horário normal: 9h às 18h.',
  especial: 'A loja está aberta em horário especial: 10h às 14h.'
}

function verificarFuncionamento(dia) {
  if (dia > 6 || dia < 0) {
    return 'Informe um dia válido (0-6)'
  }
  return dia >= 1 && dia <= 5 ? horarios.normal : horarios.especial
}

Esse código usa um objeto para guardar mensagens e um operador condicional para decidir o horário.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!