JavaScript-daky önümleriň hasap edijisindeki umumy summasy

Indi bolsa, tablisanyň aşagynda satyň alnadylyşynyň umumy summasy çykaryljak etmeli. Bu ýerde aýratynlyklar bar.

Ýagdaýy üýtgetsek, şu düşünmek bolar, summa diňe täze satyň alnadylyşy goşulanda däl, eýsem pozulanda we üýtgedilende hem ýerine ýetirilmeli.

Men bu ýagdaýda bir funksiýa ýasamagy teklip ederdim, ony recountTotal diýip atlandyralyň, bu funksiýa umumy summany doly gaýtadan hasaplar. Ýagny, ähli satyň alnadylyşlaryň üstünden aýlanýar we olaryň cost sütünindäki mazmuny jemleýär.

Beýle bir funksiýa bolsa, biz ony umumy summanyň üýtgemegi öz içine alýan islendik ýerde çagyryp bileris. Elbetde, her gezek umumy summany hasaplamak birneme optimal däl. Emma biz kodyň ýönekeýleşdirilmegini alarys.

Täze satyň alnadylyşy döredilende göz öňünde tutulan funksiýany ulanalyň:

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, 'pozmak', 'remove');
  
  table.appendChild(tr);
  recountTotal(); // umumy summany gaýtadan hasaplaýarys
});

Şu ýerde beýan edilen funksiýanyň çalşymy:

javascriptfunction recountTotal() {
  let costs = table.querySelectorAll('.cost');
  
  if (costs) {
    // jemi tapýarys we ony #total-e ýazýarys
  }
}
Задание 1

Men tarapyndan beýan edilen recountTotal funksiýasyny amala aşyryň.