ჯამური თანხა პროდუქტების კალკულატორში JavaScript-ში
ახლა კი მოდით გავაკეთოთ ისე, რომ ცხრილის ქვემოთ გამოჩნდეს შესყიდვების ჯამური თანხა. აქ არის ნიუანსები.
თუ სიტუაციას დავუფიქრდებით, გახდება ნათელი, რომ თანხა უნდა შესწორდეს არა მხოლოდ ახალი შესყიდვის დამატებისას, არამედ წაშლის და რედაქტირების დროსაც.
ამ შემთხვევაში მე ვთავაზობდი, რომ შეგვექმნა
გარკვეული ფუნქცია, ვუწოდოთ მას recountTotal,
რომელიც შეასრულებს თანხის სრლელ ხელახალ გამოთვლას.
ანუ ის გაივლის ციკლით ყველა შესყიდვას
და შეაჯამებს მათი cost სვეტის შიგთავსს.
ასეთი ფუნქციის ქონით, ჩვენ შევძლებთ მის გამოძახებას ნებისმიერ ადგილას, სადაც მოსალოდნელია რაიმე ცვლილება ჯამურ თანხაში. რა თქმა უნდა, ოდნავ არაოპტიმალურია ყოველ ჯერზე ჯამური თანხის გამოთვლა. მაგრამ ამით ჩვენ მივიღებთ კოდის მნიშვნელოვან გამარტივებას.
გამოვიყენოთ განზრახული ფუნქცია ახალი შესყიდვის შექმნის დროს:
add.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, 'წაშლა', 'remove');
table.appendChild(tr);
recountTotal(); // გამოვთვალოთ ჯამური თანხა
});
აი აღწერილი ფუნქციის შაბლონი:
function recountTotal() {
let costs = table.querySelectorAll('.cost');
if (costs) {
// ვპოულობთ ჯამს და ვწერთ მას #total-ში
}
}
განახორციელეთ მე აღწერილი ფუნქცია recountTotal.