解释 JavaScript 中的生成器函数?
javascriptobject oriented programmingfront end technology
生成器
JavaScript 支持 生成器函数 和 生成器对象。生成器函数 与普通函数相同,但每当它需要生成值时,它都会使用 'yield' 关键字而不是 'return'。'yield' 关键字会暂停函数执行并将值发送回调用者。它具有从中断处恢复功能的能力。
语法
function* generator(){ yeild 1; yeild 2; }
示例
在以下示例中,使用生成器函数打印了自然数 10、9 和 8。我们可以运行 for 循环并打印所需的任何数字,而不是单独打印每个数字。
<html> <body> <script> function * number() { var num = 10; while (true) { yield num--; } } var gen = number(); document.write(gen.next().value); document.write("</br>"); document.write(gen.next().value); document.write("</br>"); document.write(gen.next().value); </script> </body> </html>
输出
10 9 8