生成器
什么是生成器
生成器是 ES6 引入的特殊函数,它可以在函数执行期间暂停,并在需要时恢复执行。
定义生成器
通过在函数名称前面加上 *
符号,可以定义一个生成器函数。
只要是可以定义函数的地方,就可以定义生成器函数。但是,箭头函数不能定义生成器函数。
ts
// 生成器函数声明
function* generatorFn() {}
// 生成器函数表达式
const generator = function* () {};
// 对象字面量方法的生成器函数
const foo = {
*generatorFn() {},
};
// 类方法的生成器函数
class Foo {
*generatorFn() {}
}
// 静态方法的生成器函数
class Bar {
static *generatorFn() {}
}