Return语句

return语句标记了Generator函数中最后一个值,并表明再此之后没有可以再生成的值了:

code/generators/return-statement.js

function* withReturn() {
  yield 1
  yield 55
  return 250
  yield 500
}
const g = withReturn()
const v1 = g.next().value // --> 1
const v2 = g.next().value // --> 55
const v3 = g.next().value // --> 250
const v4 = g.next().value // --> undefined

上面的代码可以生成1,25,250三个值,但是不会执行到最后一个yield表达式,因为return语句表示Generator函数已经结束了。

用户头像
登录后发表评论