function solve() { let products=[]; Array.from(document.querySelectorAll("#exercise .product button")) .forEach(e=>{e.addEventListener("click",AddToCart)}); document.querySelectorAll("#exercise button")[3].addEventListener('click',Buy); const textDiv=document.getElementsByTagName("textarea")[0]; function AddToCart(e){ let targetProduct=e.target; let productDiv= targetProduct.parentNode; let price=+productDiv.children[2].textContent.split(': ')[1]; let name=productDiv.children[1].textContent; let product={ 'Name':name, "Price":price } products.push(product); let addedProduct=`Added ${product.Name} for ${product.Price.toFixed(2)} to the cart.\n`; textDiv.value+=addedProduct; } function Buy(){ let productNames=products.map(x=>x.Name); let unique = [...new Set(productNames)]; let sum=products.map(x=>x.Price).reduce((a,b)=>{return a+b},0).toFixed(2); let shoppingList=`You bought ${unique.join(', ')} for ${sum}.\n`; textDiv.value+=shoppingList; } }