文章 > JavaScript > js调用generator的方法

js调用generator的方法

js generator

头像

小妮浅浅

2021-10-23 10:49:184214浏览 · 0收藏 · 0评论

1、不断调用generator对象的next()方法,执行generator代码,然后,每次遇到yieldx;返回一个对象,然后暂停。

var f = fib(5);
f.next(); // {value: 0, done: false}
f.next(); // {value: 1, done: false}
f.next(); // {value: 1, done: false}
f.next(); // {value: 2, done: false}
f.next(); // {value: 3, done: false}
f.next(); // {value: undefined, done: true}

2、直接用for...of循环迭代generator对象,不需要自己判断done。

function* fib(max) {
    var t,
        a = 0, b = 1, n = 0;
    while (n < max) {
        yield a;
        [a, b] = [b, a + b];
        n ++;
    }
    return;
}
for (var x of fib(10)) {
    console.log(x); // 依次输出0, 1, 1, 2, 3, ...
}

以上就是js调用generator的方法,希望对大家有所帮助。更多js学习指路:js教程

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!