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

[Dúvida] Mesma dúvida do último exercício

var pista = document.getElementById('qtd-pista');
var superior = document.getElementById('qtd-superior');
var inferior = document.getElementById('qtd-inferior');


var seletorSuperior = document.getElementById('superior').textContent;
var seletorSuperiorPartido = seletorSuperior.split(' ')[1].split('2')[0];


var seletorPista = document.getElementById('pista').textContent.toLowerCase();
var seletorPistaPartido = seletorPista.split('1')[0];


var seletorInferior = document.getElementById('inferior').textContent;
var seletorInferiorPartido = seletorInferior.split(' ')[1].split('4')[0];


var qtdPista = parseInt(pista.textContent);
var qtdSuperios = parseInt(superior.textContent);
var qtdInferior = parseInt(inferior.textContent);


function comprar(){
    var tipoPoltrona = document.getElementById('tipo-ingresso').value;
   
    var qtd = parseInt(document.getElementById('qtd').value);
 

    if(qtd >= 1 && qtd<=10){

        if(tipoPoltrona === seletorInferiorPartido){
            if(qtdInferior > 0){
                qtdInferior = qtdInferior - qtd;
                inferior.textContent = qtdInferior;
                alert('Compra realizada com sucesso!');
            }else{
                alert('Não há mais lugares disponíveis nas Cadeiras Inferiores!');
            }

        }else if(tipoPoltrona === seletorSuperiorPartido){
            if(qtdSuperios > 0){
                qtdSuperios = qtdSuperios - qtd;
                superior.textContent = qtdSuperios;
                alert('Compra realizada com sucesso!');
            }else{
                alert('Não há mais lugares disponíveis nas Cadeiras Superiores!');
            }
            
        }else{
            if(qtdPista > 0){
                qtdPista = qtdPista - qtd;
                pista.textContent = qtdPista;
                alert('Compra realizada com sucesso!');
            }else{
                alert('Não há mais lugares disponíveis na Pista!');
            }
            
        }
    }else{
        alert('A quantidade de ingressos selecionada não é válida. Selecione uma quantidade entre 1 e 10 ingressos.');
    }
}
HTML:
 <ul class="lista">
                <li id="pista">Pista<span id="qtd-pista">100</span></li>
                <li id="superior">Cadeira superior<span  id="qtd-superior">200</span></li>
                <li id="inferior">Cadeira inferior<span  id="qtd-inferior">400</span></li>
  </ul>

Eu fiz desse modo, mas ele usaram document novamente. O meu funcionou, mas não sei se está certo ou não, o que devo fazer? E eu fiz uma alteração no HTML, para poder criar as funções usando o split, e assim praticar mais conhecimentos.

1 resposta
solução!

Olá Pedro, tudo bem com você?

O método document.getElementById é uma maneira de acessar elementos do DOM (Document Object Model) e é muito comum usá-lo várias vezes no JavaScript, especialmente quando precisamos acessar vários elementos diferentes.

Em relação ao método split que você usou, ele é uma maneira eficaz de obter a parte do texto que você precisa. No entanto, ele pode tornar o código um pouco mais difícil de ler e entender, especialmente para pessoas que não estão familiarizadas com o seu código. Uma alternativa seria usar o método textContent diretamente, como foi feito na aula.

Por exemplo, em vez de:

var seletorSuperior = document.getElementById('superior').textContent;
var seletorSuperiorPartido = seletorSuperior.split(' ')[1].split('2')[0];

Você poderia fazer:

var seletorSuperior = document.getElementById('superior').textContent;

No entanto, a sua solução também está correta e é uma maneira válida de resolver o problema. A principal reflexão que eu sugiro é você tentar tornar o seu código o mais simples e legível possível, para que outras pessoas (e você mesmo no futuro) possam entender facilmente o que o código está fazendo.

Conte com o apoio do Fórum na sua jornada. Espero ter ajudado. Fico à disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!