Подсчет суммы в JS

Есть такая функция, она создает табличку в три колонки: наименование, количество, сумма с учетом количества. Нужно еще вывести итого для третьего столбца под таблицей. Как подсчитать все значения из третьего столбца?

function listcon(id) {
display += "<table width='100%' border='0' cellspacing='3' cellpadding='0' class='item'>";
 if(res.ts['id']) {
  for(key in res.ts['id']) {
    if(res.ts['parm'][key] == "") {
    display += "<tr><td align='left'>"+res.ts['am'][res.ts['id'][key]]+"</td><td align='right'>"+res.ts['kol'][key]+"</td><td align='right'>"+res.ts['price'][key] * res.ts['kol'][key]+" руб.</td></tr>";
     if(res.ts['parID'][key] >= "0") {
       for(k in res.ts['id']) {
        if(res.ts['parm'][k] == res.ts['parID'][key]) {
          display += "<tr><td align='left'> + "+res.ts['am'][res.ts['id'][k]]+"</td><td align='right'>"+res.ts['kol'][k]+"</td><td align='right'>"+res.ts['price'][key] * res.ts['kol'][k]+" руб.</td></tr>";
        }
       }
      }
    }
   }
  }                                     
display += "</table>";
$("#window_cont #sal_cont_content").html(display);
}


Ответы (1 шт):

Автор решения: Bamberg

Если я правильно понял разметку, то так должно работать

function listcon(id) {
let sum = 0;
display += "<table width='100%' border='0' cellspacing='3' cellpadding='0' class='item'>";
 if(res.ts['id']) {
  for(key in res.ts['id']) {
    if(res.ts['parm'][key] == "") {
    display += "<tr><td align='left'>"+res.ts['am'][res.ts['id'][key]]+"</td><td align='right'>"+res.ts['kol'][key]+"</td><td align='right'>"+res.ts['price'][key] * res.ts['kol'][key]+" руб.</td></tr>";
     if(res.ts['parID'][key] >= "0") {
       for(k in res.ts['id']) {
        if(res.ts['parm'][k] == res.ts['parID'][key]) {
          sum += res.ts['price'][key] * res.ts['kol'][k];
          display += "<tr><td align='left'> + "+res.ts['am'][res.ts['id'][k]]+"</td><td align='right'>"+res.ts['kol'][k]+"</td><td align='right'>"+res.ts['price'][key] * res.ts['kol'][k]+" руб.</td></tr>";
        }
       }
       display += `<tr><td></td><td></td><td>${sum}</td></tr>`;
      }
    }
   }
  }                                     
display += "</table>";
$("#window_cont #sal_cont_content").html(display);
}
→ Ссылка