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

Praticando JavaScript: Condicionais - Resolução 08 - Verificando o Status de Pagamento - switch(true)

Praticando JavaScript: Condicionais - Resolução 08 - Verificando o Status de Pagamento - switch(true)

O código conta com:

. 3 arrays, cada um para determinar o status de cada compra.
. 2 functions, uma para verificar a entrada da compra que deseja verificar o pagamento, e a outra para verificar o status do pagamento dessa compra, utilizando um switch/case com switch(true).

const comprasPendentes = ["compra01", "compra02", "compra03"];
const comprasAprovadas = ["compra04", "compra05"];
const comprasRecusadas = ["compra06", "compra07"];

let promptResposta = prompt("Qual compra deseja verificar? (compra[número] ex: compra01): ").toLowerCase();
promptResposta = verificarEntrada(promptResposta);

const resultado = verificarStatusPagamento(promptResposta);
console.log(resultado);

function verificarEntrada(promptResposta) {
    while (!comprasPendentes.includes(promptResposta) && !comprasAprovadas.includes(promptResposta) && !comprasRecusadas.includes(promptResposta)) {
        promptResposta = prompt("Compra inválida. Qual compra deseja verificar? (compra[número] ex: compra01): ").toLowerCase();
    }
    return promptResposta;
}

function verificarStatusPagamento(compra) {
    switch (true) {
        case comprasPendentes.includes(compra):
            return "Pagamento pendente.";
            break;
        case comprasAprovadas.includes(compra):
            return "Pagamento aprovado.";
            break;
        case comprasRecusadas.includes(compra):
            return "Pagamento recusado.";
            break;
        default:
            return "Status de pagamento inválido.";
    }
}
1 resposta
solução!

Olá, Pedro! Tudo bem?

Mais uma solução muito criativa!

O uso do switch(true) é uma técnica excelente quando queremos usar a estrutura limpa do switch para avaliar expressões booleanas (como o .includes()), em vez de apenas comparar valores fixos. Ficou muito elegante!

Parabéns por explorar essas diferentes estruturas de controle!

Bons estudos!

Sucesso

Imagem da comunidade