actual = ''; expected = '0,1,2,3,4,'; function loop(f) { var p; for (var i = 0; i < 10; ++i) { p = f(); } return p; } function f(j, k) { var g = function() { return k; } k = j; appendToActual(loop(g)); } for (var i = 0; i < 5; ++i) { f(i); } assertEq(actual, expected)