Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Resolução

function processarPedido (nome, tipo, fnMensagem) {
    console.log (`Processando pedido de ${nome}`);
    fnMensagem (nome, tipo);
}


function mensagemPersonalizada (nome, tipo){
    if (tipo === 'vip') {
        console.log (`Obrigado pela preferência, ${nome}! Você ganhou frete grátis.`);
    } else if (tipo === 'novo'){
        console.log (`Bem-vindo(a), ${nome}! Aproveite um cupom de boas-vindas.`);
    } else {
        console.log (`Obrigado pela sua compra, ${nome}!`)
}}


processarPedido ('lucas', 'vip', mensagemPersonalizada)
1 resposta
solução!

Olá, João Vítor! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de funções de ordem superior para delegar responsabilidades, utilizou muito bem a passagem de funções como parâmetro para personalizar mensagens e ainda compreendeu a importância das estruturas condicionais para adaptar a resposta conforme o tipo de cliente.

Uma dica interessante para o futuro é aplicar objetos para organizar diferentes tipos de mensagens. Assim:

function processarPedido(nome, tipo) {
  console.log(`Processando pedido de ${nome}`);

  const mensagens = {
    vip: `Obrigado pela preferência, ${nome}! Você ganhou frete grátis.`,
    novo: `Bem-vindo(a), ${nome}! Aproveite um cupom de boas-vindas.`,
    default: `Obrigado pela sua compra, ${nome}!`
  };

  console.log(mensagens[tipo] || mensagens.default);
}

processarPedido('lucas', 'vip');

Isso faz com que o código fique mais limpo e fácil de manter, já que as mensagens ficam centralizadas em um único objeto.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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