arguments-7.js (359B)
1 // Changing arguments.length during a for-of loop iterating over arguments affects the loop. 2 3 load(libdir + "iteration.js"); 4 5 Object.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator]; 6 7 var s; 8 function f() { 9 for (var v of arguments) { 10 s += v; 11 arguments.length--; 12 } 13 } 14 15 s = ''; 16 f('a', 'b', 'c', 'd', 'e'); 17 assertEq(s, 'abc');