var test = [];
for( var i = 0; i < 10000; i++ ){
test.push(i);
}
function sum(test,initial){
initial = initial || 0;
return test.length===0?initial:initial + test.shift() + sum(test);
}
function sumTCO(test,initial){
initial = initial || 0;
return test.length===0?initial:sumTCO( test, initial+test.shift());
}
//console.log(sum(test));
console.log(sumTCO(test));