GeneratorFunction

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

Das GeneratorFunction-Objekt bietet Methoden für Generator-Funktionen. In JavaScript ist jede Generator-Funktion tatsächlich ein GeneratorFunction-Objekt.

Beachten Sie, dass GeneratorFunction kein globales Objekt ist. Es kann durch den folgenden Code abgerufen werden:

js
const GeneratorFunction = function* () {}.constructor;

GeneratorFunction ist eine Unterklasse von Function.

Probieren Sie es aus

const GeneratorFunction = function* () {}.constructor;

const foo = new GeneratorFunction(`
  yield 'a';
  yield 'b';
  yield 'c';
`);

let str = "";
for (const val of foo()) {
  str = str + val;
}

console.log(str);
// Expected output: "abc"

Konstruktor

GeneratorFunction()

Erstellt ein neues GeneratorFunction-Objekt.

Instanzeigenschaften

Erbt auch Instanzeigenschaften von seinem Elternobjekt Function.

Diese Eigenschaften sind auf GeneratorFunction.prototype definiert und werden von allen GeneratorFunction-Instanzen geteilt.

GeneratorFunction.prototype.constructor

Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für GeneratorFunction-Instanzen ist der Anfangswert der GeneratorFunction-Konstruktor.

GeneratorFunction.prototype.prototype

Alle Generator-Funktionen teilen die gleiche prototype-Eigenschaft, die Generator.prototype ist. Jede Generator-Funktion, die mit der function*-Syntax oder dem GeneratorFunction()-Konstruktor erstellt wurde, hat ebenfalls ihre eigene prototype-Eigenschaft, deren Prototyp GeneratorFunction.prototype.prototype ist. Wenn die Generator-Funktion aufgerufen wird, wird ihre prototype-Eigenschaft zum Prototyp des zurückgegebenen Generator-Objekts.

GeneratorFunction.prototype[Symbol.toStringTag]

Der Anfangswert der [Symbol.toStringTag]-Eigenschaft ist der String "GeneratorFunction". Diese Eigenschaft wird in Object.prototype.toString() verwendet.

Diese Eigenschaften sind die eigenen Eigenschaften jeder GeneratorFunction-Instanz.

prototype

Wird verwendet, wenn die Funktion als Konstruktor mit dem new-Operator verwendet wird. Es wird zum Prototyp des neuen Objekts.

Instanzmethoden

Erbt Instanzmethoden von seinem Elternobjekt Function.

Spezifikationen

Specification
ECMAScript® 2025 Language Specification
# sec-generatorfunction-objects

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
GeneratorFunction
GeneratorFunction() constructor

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch