在 JavaScript 中使用函数* 声明
函数* 声明用于定义一个返回 Generator 对象的生成器。生成器对于异步编程非常强大,因为它们旨在解决回调问题。
在生成器中,使用yield关键字而不是 return。 yield 语句暂停函数的执行并将值发送回调用者,但保留足够的状态以使函数能够从上次执行状态恢复。因此,该函数在最后一次 yield 运行后立即继续执行。 next()方法用于返回一个具有两个属性的对象,done 和 value,并可用于进入生成器的下一个状态。
句法:
function* function_name(param1, param2...)
{
function body
}
下面的例子演示了函数* 声明的使用。
示例 1:
HTML
HTML
输出:
50
100
150
undefined
示例 2:
HTML
输出:
Yielded: 5
Yielded: 25
Yielded: 125
Yielded: 625