Download javascript eBook


Generator functions (defined by the function* keyword) run as coroutines, generating a series of values as they're requested through an iterator.


  • function* name(parameters) { yield value; return value }
  • generator = name(arguments)
  • { value, done } =
  • { value, done } = generator.return(value)
  • generator.throw(error)


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 website.

Related Examples


946 Contributors: 17
Sunday, May 7, 2017
Licensed under: CC-BY-SA

Not affiliated with Stack Overflow
Rip Tutorial:

Download eBook