array-holes-slow.js (323B)
1 // for-of on a slow Array consults the prototype chain when it encounters a hole. 2 3 var a = [0, , , 3]; 4 a.slow = true; 5 Object.prototype[1] = 'peek1'; 6 Array.prototype[2] = 'peek2'; 7 8 var log = []; 9 for (var x of a) 10 log.push(x); 11 assertEq(log[1], 'peek1'); 12 assertEq(log[2], 'peek2'); 13 assertEq(log.join(), "0,peek1,peek2,3");