Generator functions (defined by the
function* keyword) run as coroutines, generating a series of values as they're requested through an iterator.
Generator functions are a feature introduced as part of the ES 2015 specification and are not available in all browsers. They are also fully supported in Node.js as of
v6.0. For a detailed browser compatibility list, see the MDN Documentation, and for Node, see the node.green website.