Вы также можете взглянуть на underscore.js , который добавляет некоторые хорошие функциональные возможности программирования в Javascript.
var underscore = _.noConflict();
var arr = [5, 5, 5, 5, 5];
var temp = [];
underscore.reduce(arr, function(memo, num) {
var value = memo + num;
temp.push(value);
return value; }, 0);
console.log(temp);
// Производит: 5, 10, 15, 20, 25.