Adicionando uma nova compra na calculadora de produtos

Para começar, vamos fazer com que ao clicar no botão, uma nova linha com uma compra seja adicionada à tabela:

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 = 'remover';
  td.classList.add('remove');
  tr.appendChild(td);
  
  table.appendChild(tr);
});

A solução que apresentei, no entanto, tem problemas evidentes com duplicação de código: basicamente para cada célula escrevemos o mesmo código.

Seria apropriado ter uma função para criar uma célula da tabela. Deixe que esta função receba como primeiro parâmetro uma referência à linha da tabela, como segundo parâmetro - o texto da célula da tabela, e como terceiro - o nome da classe CSS da célula:

javascriptfunction createCell(tr, value, name) {
  
}

Tendo tal função, poderíamos reescrever o código acima da seguinte forma:

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, 'remover', 'remove');
  
  table.appendChild(tr);
});
Задание 1

Implemente a função createCell que descrevi.

Задание 2

Copie meu código para adicionar uma nova compra. Teste a adição de uma nova compra na tabela.

Задание 3

Modifique a função createCell de forma que ela retorne via return a célula da tabela criada.