Ваш forEach
обратный вызов должен иметь несколько аргументов.Вот формат, в соответствии с MDN
arr.forEach(function callback(currentValue[, index[, array]]) { /*...*/ }
Я не знаю точно, как выглядит ваш массив «data», но по крайней мере некоторые из ваших ссылок внутри вашего forEach
почти наверняка должны просматривать каждый член массива, а не сам массив data
.Например, я предполагаю, что ваша сумма должна смотреть на каждого участника, что-то вроде этого, возможно, если у каждого участника есть свойство totals
, содержащее различные type
s:
calcTotal: function(type) {
sum = 0;
data.allItems[type].forEach(function(item) {
sum += item.totals[type];
// ...
}
)
},