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

[Dúvida] Função

Não entendi muito bem como funciona a função de atualizar as estatísticas, principalmente na parte do pecas[peca][elemento.dataset.estatistica]

function atualizaEstatisticas(peca) {
   estatisticas.forEach( function(elemento){
    elemento.textContent = parseInt(elemento.textContent) + pecas[peca][elemento.dataset.estatistica];
   })
}
1 resposta
solução!

Oi Eduarda, tudo bem?

Agradeço por compartilhar sua dúvida sobre a função de atualizar as estatísticas.

function atualizaEstatisticas(peca) {
   estatisticas.forEach( function(elemento){
    elemento.textContent = parseInt(elemento.textContent) + pecas[peca][elemento.dataset.estatistica];
   })
}

Essa função, chamada atualizaEstatisticas, é responsável por atualizar as estatísticas de uma peça específica. Vamos dividi-la em partes para melhor entendimento:

  1. function atualizaEstatisticas(peca): Aqui temos a declaração da função atualizaEstatisticas, que recebe um parâmetro chamado peca. Esse parâmetro representa a peça para a qual queremos atualizar as estatísticas. Ele será usado para acessar os valores correspondentes no objeto pecas.

  2. estatisticas.forEach(function(elemento) { ... }): Aqui usamos o método forEach para iterar sobre cada elemento do array estatisticas. Esse array contém elementos do tipo HTML.

  3. elemento.textContent = parseInt(elemento.textContent) + pecas[peca][elemento.dataset.estatistica];: Dentro do loop forEach, para cada elemento, atualizamos o seu textContent. O textContent é a propriedade que contém o texto exibido pelo elemento HTML.

Nessa linha, estamos realizando algumas operações. Vou explicá-las separadamente:

  • parseInt(elemento.textContent): Aqui usamos a função parseInt para converter o conteúdo atual do elemento em um número inteiro. Essa conversão é necessária porque, por padrão, o conteúdo de um elemento HTML é tratado como uma string.

  • pecas[peca]: Aqui acessamos o objeto pecas usando a chave peca. E pecas é um objeto que contém informações sobre diferentes peças.

  • [elemento.dataset.estatistica]: Aqui estamos usando elemento.dataset.estatistica como chave para acessar uma propriedade específica do objeto pecas[peca]. O dataset é uma propriedade dos elementos HTML que contém todos os atributos de data, e podemos acessá-los por meio dessa propriedade. No caso, estatistica é um atributo de dados que deve estar presente nos elementos HTML.

Dessa forma, a função atualizaEstatisticas percorre cada elemento em estatisticas, converte seu conteúdo atual em um número inteiro e adiciona o valor correspondente encontrado em pecas[peca][elemento.dataset.estatistica]. Em seguida, o novo valor é atribuído ao textContent do elemento, atualizando assim a estatística exibida na página.

Espero ter ajudado.

Um abraço e bons estudos.