Új vásárlás hozzáadása a termékkalkulátorban

Kezdetben tegyük úgy, hogy a gomb megnyomására a táblázathoz új sor kerüljön a vásárlással:

javascriptadd.addEventListener('click', function() {
  let tr = document.createElement('tr');
  
  let td;
  
  td = document.createElement('td');
  td.textContent = name.value;
  td.classList.add('name');
  tr.appendChild(td);
  
  td = document.createElement('td');
  td.textContent = price.value;
  td.classList.add('price');
  tr.appendChild(td);
  
  td = document.createElement('td');
  td.textContent = amount.value;
  td.classList.add('amount');
  tr.appendChild(td);
  
  td = document.createElement('td');
  td.textContent = price.value * amount.value;
  td.classList.add('cost');
  tr.appendChild(td);
  
  td = document.createElement('td');
  td.textContent = 'töröl';
  td.classList.add('remove');
  tr.appendChild(td);
  
  table.appendChild(tr);
});

Az általam bemutatott megoldás azonban nyilvánvaló problémákkal küzd a kódismétlést illetően: gyakorlatilag minden cellához ugyanazt a kódot írjuk.

Célszerű lenne egy függvény a táblázat cella létrehozásához. Legyen ez a függvény első paramétere a táblázat sorára mutató hivatkozás, második paramétere - a cella szövege, harmadik pedig - a cella CSS osztályneve:

javascriptfunction createCell(tr, value, name) {
  
}

Egy ilyen függvény birtokában a fenti kódot a következőképpen írhatnánk át:

javascriptadd.addEventListener('click', function() {
  let tr = document.createElement('tr');
  
  createCell(tr, name.value, 'name');
  createCell(tr, price.value, 'price');
  createCell(tr, amount.value, 'amount');
  createCell(tr, price.value * amount.value, 'cost');
  createCell(tr, 'töröl', 'remove');
  
  table.appendChild(tr);
});
Задание 1

Valósítsa meg a leírt createCell függvényt.

Задание 2

Másolja le a kódot az új vásárlás hozzáadásához. Tesztelje az új vásárlás táblázathoz való hozzáadását.

Задание 3

Módosítsa a createCell függvényt úgy, hogy az a return segítségével adja vissza a létrehozott táblázat cellát.