1
resposta

[Projeto] [Desafio] Ingressos Online - V. Alternativa

A estrutura a seguir foi realizada antes de visualizar as resoluções ensinadas pelos professores, no qual acabei fazendo uma versão alternativa do código, seguindo como base o padrão e lógica nos desafios anteriores. Caso apresente algum erro, por favor me informar.

Projeto Finalizado・┈ ・┈・┈・

let totalGeral;

function comprar() {
    let ingresso = document.getElementById('tipo-ingresso').value;
    let quantidade = parseInt(document.getElementById('qtd').value);
    let campoQtd = parseInt(document.getElementById(`qtd-${ingresso}`).textContent);
    if (quantidade > campoQtd || quantidade < 1) {
        alert('Indisponível para compra');
        } else {
        campoQtd = campoQtd - quantidade;
        document.getElementById(`qtd-${ingresso}`).textContent = campoQtd;
        alert('Compra efetuada com sucesso!');
    }
    let disponiveis = parseInt(campoQtd);
    let ingressosComprados = disponiveis - quantidade;
    totalGeral = ingressosComprados;
    campoQtd.textContent = totalGeral;
}
1 resposta

Oi, Isabelli! Como vai?

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

Gostei bastante da sua iniciativa em construir uma versão alternativa com base nos desafios anteriores. Isso mostra que você está aplicando os conceitos de forma autônoma e explorando a lógica com segurança.

Uma coisa que você pode testar no futuro é verificar se o valor inserido no campo de quantidade realmente é um número válido antes de processar a compra. Isso ajuda a evitar falhas inesperadas.


let quantidade = parseInt(document.getElementById('qtd').value);

if (isNaN(quantidade)) {
    alert('Digite uma quantidade válida');
    return;
}

Esse trecho verifica se o valor convertido é realmente um número antes de continuar a execução.

Alura

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