ES6 Generator
by Artem
JavaScript
'use strict';
function* createGreeting() {
try {
const name = yield;
yield `Hello, ${name}!`;
} catch (error) {
console.log(`Error: ${error}`);
}
}
const greeting = createGreeting();
greeting.next();
greeting.throw('Something went wrong!');
//console.log(greeting.next('Pete').value);
function* createThreeToFourCounter() {
yield 3;
return 4;
}
function* createCounter() {
yield 1;
yield 2;
const four = yield * createThreeToFourCounter();
console.log(`${four} - from delegated generator`);
yield 5;
}
for (const i of createCounter()) {
console.log(i);
}