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:
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 derGeneratorFunction-Konstruktor. GeneratorFunction.prototype.prototype-
Alle Generator-Funktionen teilen die gleiche
prototype-Eigenschaft, dieGenerator.prototypeist. Jede Generator-Funktion, die mit derfunction*-Syntax oder demGeneratorFunction()-Konstruktor erstellt wurde, hat ebenfalls ihre eigeneprototype-Eigenschaft, deren PrototypGeneratorFunction.prototype.prototypeist. Wenn die Generator-Funktion aufgerufen wird, wird ihreprototype-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 inObject.prototype.toString()verwendet.
Diese Eigenschaften sind die eigenen Eigenschaften jeder GeneratorFunction-Instanz.
Instanzmethoden
Erbt Instanzmethoden von seinem Elternobjekt Function.
Spezifikationen
| Specification |
|---|
| ECMAScript® 2025 Language Specification # sec-generatorfunction-objects |
Browser-Kompatibilität
BCD tables only load in the browser