nikolayneykov

Untitled

May 20th, 2019
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function solve () {
  2.   let buttons = Array.from(document.querySelectorAll('.add-product'))
  3.   buttons.forEach(b => b.addEventListener('click', addingProducts))
  4.   let checkOutButton = document
  5.     .querySelector('.checkout')
  6.     .addEventListener('click', checkout)
  7.   let totalCost = 0
  8.   let totalProducts = new Set()
  9.   function addingProducts () {
  10.     let textArea = document.querySelector('textarea')
  11.  
  12.     let products = {
  13.       Bread: 0.8,
  14.       Milk: 1.09,
  15.       Tomatoes: 0.99
  16.     }
  17.     let output = ''
  18.     if (buttons.indexOf(this) === 0) {
  19.       output = `Added Bread for ${products['Bread'].toFixed(2)} to the cart.\n`
  20.       totalCost += products['Bread']
  21.       totalProducts.add('Bread')
  22.     } else if (buttons.indexOf(this) === 1) {
  23.       output = `Added Milk for ${products['Milk'].toFixed(2)} to the cart.\n`
  24.       totalCost += products['Milk']
  25.       totalProducts.add('Milk')
  26.     } else if (buttons.indexOf(this) === 2) {
  27.       output = `Added Tomatoes for ${products['Tomatoes'].toFixed(
  28.         2
  29.       )} to the cart.\n`
  30.       totalCost += products['Tomatoes']
  31.       totalProducts.add('Tomatoes')
  32.     }
  33.     textArea.textContent += output
  34.   }
  35.   function checkout () {
  36.     let textArea = document.querySelector('textarea')
  37.     let out = Array.from(totalProducts.values()).join(', ')
  38.     textArea.textContent += `You bought ${out} for ${totalCost.toFixed(2)}.`
  39.     buttons.forEach(b => b.removeEventListener('click', addingProducts))
  40.     this.removeEventListener('click', checkout)
  41.   }
  42. }
Advertisement
Add Comment
Please, Sign In to add comment