Olá Estudante misterioso.
Tudo bem?
Parabéns por compartilhar sua solução! Vejo que você compreendeu bem a proposta de utilizar funções e callbacks para realizar um processamento após a coleta dos dados do usuário.
No entanto, há um pequeno erro de sintaxe que impedirá a execução do código:
let tipAcess = tipAcesso*
O caractere * no final da linha não deveria estar aí. O correto seria:
let tipAcess = tipAcesso
Depois dessa correção, a chamada:
processarPedido(
clNome.toLocaleUpperCase(),
tipAcess.toLocaleLowerCase(),
mensagemPersonalizada
)
funcionará conforme esperado.
Algumas observações para deixar o código ainda melhor:
- Você pode utilizar diretamente os parâmetros recebidos sem criar variáveis intermediárias, caso não precise modificá-los.
- O método mais utilizado para textos é
toUpperCase() e toLowerCase(). Embora toLocaleUpperCase() e toLocaleLowerCase() funcionem, eles são mais úteis quando há necessidades específicas relacionadas à localização e idioma. - A estrutura das funções
processarPedido e mensagemPersonalizada está organizada e demonstra um bom entendimento do conceito de callback.
Por exemplo:
processarPedido(
cliNome.toUpperCase(),
tipAcesso.toLowerCase(),
mensagemPersonalizada
);
ficaria mais enxuto e igualmente funcional.
Você está evoluindo bem no entendimento de funções e passagem de parâmetros. Continue praticando esse padrão, pois callbacks são uma base importante para trabalhar com operações assíncronas em JavaScript.
Avise qualquer dúvida.
Bons estudos!
Acho que tem um erro no input com um c a mais : o correto é 'Insira o seu nome:\n'