您的位置:首页>聚焦>创投 >内容

什么叫生成器(由什么组成的生成器 是由什么做成的生成器)

2022-09-15 17:39:10来源:
导读 目前是有很多朋友们对于由什么组成的生成器 是由什么做成的生成器这个信息比较感兴趣,那么小编也是收集了一些由什么组成的生成器 是由什...

目前是有很多朋友们对于由什么组成的生成器 是由什么做成的生成器这个信息比较感兴趣,那么小编也是收集了一些由什么组成的生成器 是由什么做成的生成器相关的信息来分享给大家,希望你会喜欢哦。

  生成器是由生成器的函数和生成器的迭代器组成,通过构造函数Generator创建的对象,生成器也是一种迭代器,同时又是一个可迭代对象,但是只能对其迭代一次。这是因为它们并没有把所有的值存在内存中,而是在运行时生成值。你通过遍历来使用它们,要么用一个“for”循环,要么将它们传递给任意可以进行迭代的函数和结构。大多数时候生成器是以函数来实现的。

  创建生成器:生成器的创建,必须使用生成器函数(Generator Function)。

  生成器函数的写法:

  function*method(){

  }

  执行生成器函数内部:生成器函数内部是为了给生成器的每次迭代提供的数据;每次调用生成器的next方法,将导致生成器函数运行到下一个yield关键字位置;yield是一个关键字,该关键字只能在生成器函数内部使用,表达“产生”一个迭代数据。

  需要注意的细节:

  1、生成器函数可以有返回值,返回值出现在第一次done为true时的value属性中;

  2、调用生成器的next方法时,可以传递参数,传递的参数会交给yield表达式的返回值;

  3、第一次调用next方法时,传参没有任何意义;

  4、在生成器函数内部,可以调用其他生成器函数,但是要注意加上*号。

  生成器的其他API:

  return方法:调用该方法,可以提前结束生成器函数,从而提前让整个迭代过程结束;

  throw方法:调用该方法,可以在生成器中产生一个错误。

本文到此结束,希望对大家有所帮助。

免责声明:本文由用户上传,如有侵权请联系删除!

猜你喜欢

最新文章