GeneratorFunction
GeneratorFunction 对象为 生成器函数 提供方法。在 JavaScript 中,每个生成器函数实际上都是一个 GeneratorFunction 对象。
¥The GeneratorFunction object provides methods for generator functions. In JavaScript, every generator function is actually a GeneratorFunction object.
请注意,GeneratorFunction 不是全局对象。可以通过以下代码获取:
¥Note that GeneratorFunction is not a global object. It can be obtained with the following code:
const GeneratorFunction = function* () {}.constructor;
GeneratorFunction 是 Function 的子类。
¥GeneratorFunction is a subclass of Function.
Try it
构造函数
实例属性
¥Instance properties
还从其父级 Function 继承实例属性。
¥Also inherits instance properties from its parent Function.
这些属性在 GeneratorFunction.prototype 上定义并由所有 GeneratorFunction 实例共享。
¥These properties are defined on GeneratorFunction.prototype and shared by all GeneratorFunction instances.
GeneratorFunction.prototype.constructor-
创建实例对象的构造函数。对于
GeneratorFunction实例,初始值为GeneratorFunction构造函数。 GeneratorFunction.prototype.prototype-
所有生成器函数共享相同的
prototype属性,即Generator.prototype。使用function*语法或GeneratorFunction()构造函数创建的每个生成器函数也有自己的prototype属性,其原型是GeneratorFunction.prototype.prototype。调用生成器函数时,其prototype属性将成为返回的生成器对象的原型。 GeneratorFunction.prototype[Symbol.toStringTag]-
[Symbol.toStringTag]属性的初始值为字符串"GeneratorFunction"。该属性在Object.prototype.toString()中使用。
这些属性是每个 GeneratorFunction 实例自己的属性。
¥These properties are own properties of each GeneratorFunction instance.
实例方法
规范
| Specification |
|---|
| ECMAScript Language Specification # sec-generatorfunction-objects |
浏览器兼容性
BCD tables only load in the browser