Olá, Alan, como vai?
O exercício está correto e você foi além ao implementar uma segunda solução utilizando switch case, o que demonstra curiosidade e vontade de explorar diferentes abordagens para um mesmo problema, algo muito valioso no aprendizado de programação.
Quanto ao uso do switch (true) com uma expressão condicional no case, é uma abordagem válida e funciona bem para este cenário. Mas vale saber que ela é menos comum e pode gerar estranheza em quem lê o código pela primeira vez, já que o uso mais tradicional do switch é comparar o valor de uma variável diretamente, como em:
switch (categoria) {
case 'admin':
console.log('Acesso total');
break;
case 'visitante':
console.log('Acesso restrito');
break;
default:
console.log('Acesso negado');
break;
}
Para verificações de faixa de valores, como idade maior ou igual a 18, o if/else tende a ser a escolha mais legível e expressiva. Mas conhecer as duas formas é sempre um diferencial.
O fórum fica à disposição para dúvidas, continue compartilhando seus exercícios.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!