const K = 20; | |
var obj; | |
var g = new function() { | |
this.x = "puppies"; | |
obj = this; | |
for (var i = 0; i < K; ++i) | |
yield i; | |
yield this; | |
} | |
var ct = 0; | |
for (var i in g) | |
assertEq((ct < K && ct++ == i) || i == obj, true); | |
assertEq(i.x, "puppies"); | |
function g2() { | |
for (var i=0; i<20; i++) | |
yield i; | |
} | |
var i = 0; | |
for (var x of new g2()) { | |
assertEq(i, x); | |
i++; | |
} | |
reportCompare(true,true); |