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:
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
.
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.
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.