function* fib() { let previous = 0; let current = 1; while (true) { yield current; const next = current + previous; previous = current; current = next; } } /* output: 1 1 2 3 5 8*/ const g = fib(); console.log(g.next().value); console.log(g.next().value); console.log(g.next().value); console.log(g.next().value); console.log(g.next().value); console.log(g.next().value);