function* f1() {
yield 2;
yield 3;
yield 4;
}
function* f2() {
yield 1;
yield* f1();
yield 5;
yield 6;
}
const iterator = f2();
console.log(iterator.next());
console.log(iterator.next());
console.log(iterator.next());
console.log(iterator.next());
console.log(iterator.next());
console.log(iterator.next());
/*
run:
{
done: false,
value: 1
}
{
done: false,
value: 2
}
{
done: false,
value: 3
}
{
done: false,
value: 4
}
{
done: false,
value: 5
}
{
done: false,
value: 6
}
*/