Boa tarde, sou iniciante em JavaScript e estou tentando criar a seguinte funcionalidade simulando um ‘Carrinho de Compras’, ao clicar no botão de qualquer produto ‘Adicionar ao Carrinho’, preciso que o código pegue o produto o qual eu cliquei e liste ele no fim da página (a principio apenas o nome do produto que foi clicado).
Consigo aplicar a ‘gambiarra’ apenas para o produto1, porém queria usar a função ‘forEach’* para que funcione isoladamente para cada produto (botão) clicado.
Erro no retorno = i is not defined
Segue HTML:
<div class="container paineis">
<section class="painel-novidades">
<ol>
…
<li class="produto" id="seis">
<figure>
<a href="produto.html">
<img src="imgs/watch.jpg">
<figcaption class="info-nome">Produto6</figcaption>
<label class="preço">30.00</label><br>
<button id="botao-compra" class="comprar" onclick="jogaNoCarrinho()">Adicionar ao Carrinho</button>
</figure>
</a>
</li>
</ol>
</section>
**Segue JS:**
_function jogaNoCarrinho (){_
_ event.preventDefault();_
_ _
_ montaOl();_
_}_
**_//Cria o array e armazena cada produto no array_**
_ var produtos = document.querySelectorAll(".produto");_
_ var produto = produtos[i];_
**_//Pega cada elemento do array e aplica a função com 'onclick' para inserir no HMTL o produto selecionado_**
` _ produto.forEach(function(jogaNoCarrinho){_`
_ var nome = document.querySelector(".info-nome");_
_ var nomeProd = nome.textContent;_
_});_
**_//monta e insere no HTML_**
_function montaOl(){_
_ var ol = document.querySelector("#ol");_
_ ol.appendChild(montaLi());_
_}_
**_//monta Li para inserir no OL_**
`_function montaLi(){_`
_ var li = document.createElement("li");_
_ li.classList.add("selected");_
_ li.textContent = nomeProd;_
_return li;_
_}_