GeneratorFunction() constructor
The GeneratorFunction()
constructor creates GeneratorFunction
objects.
Note that GeneratorFunction
is not a global object. It can be obtained with the following code:
const GeneratorFunction = function* () {}.constructor;
The GeneratorFunction()
constructor is not intended to be used directly, and all caveats mentioned in the Function()
description apply to GeneratorFunction()
.
Syntax
new GeneratorFunction(functionBody)
new GeneratorFunction(arg1, functionBody)
new GeneratorFunction(arg1, arg2, functionBody)
new GeneratorFunction(arg1, arg2, argN, functionBody)
GeneratorFunction(functionBody)
GeneratorFunction(arg1, functionBody)
GeneratorFunction(arg1, arg2, functionBody)
GeneratorFunction(arg1, arg2, argN, functionBody)
Note: GeneratorFunction()
can be called with or without new
. Both create a new GeneratorFunction
instance.
Creating and using a GeneratorFunction() constructor
const GeneratorFunction = function* () {}.constructor;
const g = new GeneratorFunction("a", "yield a * 2");
const iterator = g(10);
console.log(iterator.next().value);
Specifications
Browser compatibility
|
Desktop |
Mobile |
Server |
|
Chrome |
Edge |
Firefox |
Opera |
Safari |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
WebView Android |
Deno |
Node.js |
GeneratorFunction |
39 |
13 |
26 |
26 |
10 |
39 |
26 |
26 |
10 |
4.0 |
39 |
1.0 |
4.0.0 |