closure-pluseq2.js (417B)
1 actual = ''; 2 expected = '3,6,9,12,15,18,'; 3 4 function slice(a, b) 5 { 6 //return { x: a + ':' + b }; 7 return b; 8 } 9 10 function f(index) 11 { 12 var length = 20; 13 14 function get3() { 15 //appendToActual("get3 " + index); 16 if (length - index < 3) 17 return null; 18 return slice(index, index += 3); 19 } 20 21 var bytes = null; 22 while (bytes = get3()) { 23 appendToActual(bytes); 24 } 25 } 26 27 f(0); 28 29 30 assertEq(actual, expected)