testLoopingAccumulator.js (367B)
1 function addAccumulations(f) { 2 var a = f(); 3 var b = f(); 4 return a() + b(); 5 } 6 7 function loopingAccumulator() { 8 var x = 0; 9 return function () { 10 for (var i = 0; i < 10; ++i) { 11 ++x; 12 } 13 return x; 14 } 15 } 16 17 function testLoopingAccumulator() { 18 var x = addAccumulations(loopingAccumulator); 19 return x; 20 } 21 assertEq(testLoopingAccumulator(), 20);