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 GeneratorFunction
kein globales Objekt ist. Es kann mit dem folgenden Code erhalten werden:
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 += 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 Anfangswert derGeneratorFunction
Konstruktor. GeneratorFunction.prototype.prototype
-
Alle Generatorfunktionen teilen die gleiche
prototype
Eigenschaft, dieGenerator.prototype
ist. Jede mit derfunction*
Syntax oder demGeneratorFunction()
Konstruktor erstellte Generatorfunktion hat ebenfalls eine eigeneprototype
Eigenschaft, deren PrototypGeneratorFunction.prototype.prototype
ist. Wenn die Generatorfunktion aufgerufen wird, wird ihreprototype
Eigenschaft zum Prototyp des zurückgegebenen Generatorobjekts. GeneratorFunction.prototype[Symbol.toStringTag]
-
Der Anfangswert der
[Symbol.toStringTag]
Eigenschaft ist der String"GeneratorFunction"
. Diese Eigenschaft wird inObject.prototype.toString()
verwendet.
Diese Eigenschaften sind Eigeneigenschaften jeder GeneratorFunction
Instanz.
Instanz-Methoden
Erbt Instanz-Methoden von seinem Elternteil Function
.
Spezifikationen
Specification |
---|
ECMAScript® 2026 Language Specification # sec-generatorfunction-objects |