Source code

Revision control

Copy as Markdown

Other Tools

// Indexed getters can add new properties that slice should not ignore.
var arr = [];
Object.defineProperty(arr, 10000, {get: function() {
arr[10001] = 4;
return 3;
}});
arr[10010] = 6;
var res = arr.slice(8000);
assertEq(res[2000], 3);
assertEq(res[2001], 4);
assertEq(res[2010], 6);