Условный метод sum() в JavaScript

У меня возникли проблемы с подсчетом промежуточных итогов в таблице. В основном у меня есть 3 столбца переменных; ФРУКТЫ, ПРОИСХОЖДЕНИЕ и ЦЕНА. FRUIT содержит такие вещи, как "Apple", "Banana", "Orange" и т. Д. Я хочу заполнить таблицу, в которой показана общая цена столбца FRUIT, сгруппированного по значениям в столбце ORIGIN. Возможно, я упускаю простой способ сделать это, но вот что я попробовал.

  for(i=0;i<FRUIT.length;i++)
  {
  if(ORIGIN[i] == "Africa")
  {
  SUBTOTAL.push(PRICE[i])
  }
  }

Затем я использую следующий метод, чтобы разрешить мне поместить SUBTOTAL.sum() в мою таблицу, чтобы показать общую стоимость фруктов из Африки:

  Array.prototype.sum = function() {
  for (var j = 0, L = this.length, sum = 0; j < L; sum += this[j++]);
  return sum;

Метод sum работает правильно для полного столбца (например, PRICE.sum()) но я получаю неправильные промежуточные итоги, используя мое текущее выражение if. Это также сбрасывает цифры в моей таблице, которые ранее были правильными, прежде чем я добавил его, например, PRICE.sum(),

Любые рекомендации будут с благодарностью!

Большое спасибо, Карл

0 ответов

Другие вопросы по тегам