- 1.是一个状态机,封装多个内部状态;
- 2.执行Generator函数会返回一个遍历器对象,返回的遍历器对象,可以依次遍历Generator函数内部的每一个状态
- 3.Generator函数特征:①function关键字与函数名之间有一个星号;②函数体内部使用yield表达式,定义不同的内部状态
- 4.调用Generator函数,返回一个遍历器对象,代表Generator函数的内部指针。每次调用遍历器对象的next方法,就会返回一个有着value和done两个属性的对象。value属性表示当前的内部状态的值,是yield表达式后面那个表达式的值;done属性是一个布尔值,是否遍历结束
- 5.必须调用遍历器对象的next方法,使得指针移向下一个状态。每次调用next方法,内部指针就从函数头部或上一次停下来的方法开始执行,知道遇到下一个yield表达式(或return语句)为止。yield表达式是暂停执行的标记,而next方法可以恢复执行
- 6.yield表达式后面的表达式,只有当调用next方法、内部指针指向该语句时才会执行。yield表达式只能用在Generator函数里面,用在其他地方会报错
- 7.next方法的参数表示上一个yield表达式的返回值,所以在第一次使用next方法时,传递参数时无效的。语义上说,第一个next方法用来启动遍历器对象,所以不用带有参数
Generator函数
最新推荐文章于 2023-02-27 09:46:40 发布