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.
GeneratorFunction
对象为生成器函数提供了方法。在 JavaScript 中,每个生成器函数实际上都是一个 GeneratorFunction
对象。
请注意,GeneratorFunction
不是全局对象。可以通过以下代码来获取它:
const GeneratorFunction = function* () {}.constructor;
GeneratorFunction
是 Function
的子类。
尝试一下
构造函数
GeneratorFunction()
-
创建一个新的
GeneratorFunction
对象。
实例属性
也从其父类 Function
继承实例属性。
这些属性定义于 GeneratorFunction.prototype
并由所有 GeneratorFunction
实例所共享。
GeneratorFunction.prototype.constructor
-
创建实例对象的构造函数。对于
GeneratorFunction
实例,其初始值是GeneratorFunction
构造函数。 GeneratorFunction.prototype.prototype
-
所有生成器函数共享同一个
prototype
属性,即Generator.prototype
。每个生成器函数实例也有自己的prototype
属性。当生成器函数被调用时,返回的生成器对象从生成器函数继承prototype
属性,而该属性又继承自GeneratorFunction.prototype.prototype
。 GeneratorFunction.prototype[Symbol.toStringTag]
-
[Symbol.toStringTag]
属性的初始值是字符串"GeneratorFunction"
。该属性被Object.prototype.toString()
使用。
实例方法
从其父类 Function
继承实例方法。
规范
Specification |
---|
ECMAScript Language Specification # sec-generatorfunction-objects |
浏览器兼容性
BCD tables only load in the browser