Witam,
proszę o wyjaśnienie dlaczego w obu przypadkach konsola printuje mi 3 takie same obiekty, podczas gdy w drugim przypadku spodziewałbym się dwóch (bo są dwa wywołania metody next()).
żeby się nie powtarzać - góra kodu:
function *gen(end) {
for (let i = 0; i< end; i++) {
try {
yield i;
} catch (e) {
console.log(e);
}
}
}
let it = gen(2);
pierwszy wariant wywołania:
console.log(it.next());
console.log(it.next());
//console.log(it.throw('Straszliwy bug lvl99'));
console.log(it.next());
drugi wariant wywołania:
console.log(it.next());
//console.log(it.next());
console.log(it.throw('Straszliwy bug lvl99'));
console.log(it.next());
Z góry dzięki za pomoc,
crova