JS学习-generator

来源:互联网 发布:淘宝刷好评多少钱一个 编辑:程序博客网 时间:2024/05/29 11:25

generator(生成器)是ES6标准引入的新的数据类型。
一个generator函数不会调用不会立即执行,而是调用next()函数才回执行:

function* foo(x) {    yield "1";    yield "2";    yield "3";    return x+x;}var fooRe = foo(3);//不会立即执行var next1 =  fooRe.next();//{value: "1", done: false}var next2 =  fooRe.next();//{value: "2", done: false}var next3 =  fooRe.next();//{value: "3", done: false}var next4 =  fooRe.next();//{value: 6, done: true}

generator函数会保存状态,语句yield就会退出,下次进来从上次退出的地方开始执行。

原创粉丝点击