Given the provided (very simple) generator, is it possible to return the generator back to its original state to use again?
var generator = function*() {
If your intention is
to some other scope, iterate over it, do some other stuff, then be able to iterate over it again later on in that same scope.
Then the only thing you shouldn't try doing is passing the iterator, instead pass the generator:
var generator = function*() {
yield 1;
yield 2;
yield 3;
};
var user = function(generator){
for (let x of generator()) {
console.log(x);
}
for (let x of generator()) {
console.log(x);
}
}
Or just make a "round robin" iterator and check while iterating
var generator = function*() {
while(true){
yield 1;
yield 2;
yield 3;
}
};
for( x in i ){
console.log(x);
if(x === 3){
break;
}
}