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 Generatorfunktionen. In JavaScript ist jede Generatorfunktion tatsächlich ein GeneratorFunction-Objekt.

Beachten Sie, dass GeneratorFunctionkein globales Objekt ist. Es kann mit folgendem Code erhalten 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.

Instanz-Eigenschaften

Erbt auch Instanz-Eigenschaften von seinem Elternteil 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 anfängliche Wert der GeneratorFunction-Konstruktor.

GeneratorFunction.prototype.prototype

Alle Generatorfunktionen teilen dieselbe prototype-Eigenschaft, die Generator.prototype ist. Jede mit der function*-Syntax oder dem GeneratorFunction()-Konstruktor erstellte Generatorfunktion hat auch ihre eigene prototype-Eigenschaft, deren Prototype GeneratorFunction.prototype.prototype ist. Wenn die Generatorfunktion aufgerufen wird, wird ihre prototype-Eigenschaft zum Prototyp des zurückgegebenen Generatorobjekts.

GeneratorFunction.prototype[Symbol.toStringTag]

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

Diese Eigenschaften sind eigene Eigenschaften jeder GeneratorFunction-Instanz.

prototype

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

Instanz-Methoden

Erbt Instanz-Methoden von seinem Elternteil Function.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch