当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


JavaScript Generator()用法及代码示例


在 JavaScript 中,没有特定的 Generator() 构造函数,但我们可以使用生成器函数声明来构造一个可迭代的 Generator 对象,因为 Generator 对象是 Iterable 类的子类。生成器通常用于创建可以退出和重新进入的函数。

用法:

function* gen(){
    // Sample Code
}
let example = gen();

示例 1:此示例创建一个生成器对象。

Javascript


function* gen(){
        let i = "a"
        yield i;
        yield i+"b";
    }
     
let example  = gen();
console.log(typeof(example))
console.log(example.next().value);
console.log(example.next().value);

输出:当我们检查示例的类型时,我们将对象作为输出,因为没有内置的 Generator 对象

object
a
ab

示例 2:此示例创建一个无限生成器对象。

Javascript


function* gen(){
    let i = 123
    while(true){
        yield i++;
    }
}
let example  = gen();
for(let i = 0; i<5; i++) {
    console.log(example.next().value);    
}

输出:我们可以根据需要尽可能多地迭代这个生成器函数,因为它始终保持 true。

123
124
125
126
127

支持的浏览器:

  • Chrome
  • Firefox
  • Opera
  • Safari

我们有 JavaScript 生成器方法的完整列表,要检查这些方法,请阅读 JavaScript Generator Reference 文章


相关用法


注:本文由纯净天空筛选整理自shobhit_sharma大神的英文原创作品 JavaScript Generator() Constructor。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。