-1:000000000000 | 0:f95486c4b945 |
---|---|
1 function my_iterator_next() { | |
2 if (this.i == 10) { | |
3 this.i = 0; | |
4 throw this.StopIteration; | |
5 } | |
6 return this.i++; | |
7 } | |
8 function testCustomIterator() { | |
9 var o = { | |
10 __iterator__: function () { | |
11 return { | |
12 i: 0, | |
13 next: my_iterator_next, | |
14 StopIteration: StopIteration | |
15 }; | |
16 } | |
17 }; | |
18 var a=[]; | |
19 for (var k = 0; k < 100; k += 10) { | |
20 for(var j in o) { | |
21 a[k + (j >> 0)] = j*k; | |
22 } | |
23 } | |
24 return a.join(); | |
25 } | |
26 assertEq(testCustomIterator(), "0,0,0,0,0,0,0,0,0,0,0,10,20,30,40,50,60,70,80,90,0,20,40,60,80,100,120,140,160,180,0,30,60,90,120,150,180,210,240,270,0,40,80,120,160,200,240,280,320,360,0,50,100,150,200,250,300,350,400,450,0,60,120,180,240,300,360,420,480,540,0,70,140,210,280,350,420,490,560,630,0,80,160,240,320,400,480,560,640,720,0,90,180,270,360,450,540,630,720,810"); |