概念:

1.es6提供解决异步编程的方案之一

2.Generator函数是一个状态机,内部封装了不同状态的数据

3.用来生成遍历器对象

4.可暂停函数(惰性求值),yield暂停,next启动。每次返回的是yield后的表达式结果

特点:

1.function与函数名之间有一个*号

2.内部用yield表达式语句来定义不同的状态

例如:

 

3.generator函数返回的是指针对象,而不会执行函数内部逻辑

4.调用next方法函数内部逻辑开始执行,遇到yield表达式终止,返回{value:yield表达式结果/undefined,done:true/false}

5.再次调用next方法会从上次停止的yield处停止,直到最后

6.yield语句返回结果通常为undefined

 

当调用next方法时传参内容会作为启动yield语句的返回值

 

 

 

 

 未完待续!