生成器对象(Generator)

生成器对象(Generator )是由一个 generator function 返回的,它同时符合可迭代协议和迭代器协议。

语法

function* gen() { 
  yield 1;
  yield 2;
  yield 3;
}

var g = gen(); // "Generator { }"
方法

Generator.prototype.next():返回yield表达式的值。(详见
Generator.prototype.return():return() 方法返回给定的值并结束生成器。(详见
Generator.prototype.throw():向生成器抛出一个错误。(详见

举例:一个无限迭代器

function* idMaker() {
    let index = 0;
    while (true) {
        yield index++;
    }
}

let gen = idMaker();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
// 0
// 1
// 2
// 3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值