es6中偏高级的部分,通俗的讲就是一种异步编程的解决方案,相对promise更高级一点
创建一个generator函数:
函数标准:function后面加一个* ,变量前用yield
这个函数体输出的结果其实就是iterator的一个接口,返回和iterator返回结果一样
输出结果说明:
程序在遇到第一个yield时就会停下,执行完yield之前的语句,在调用第一个next就执行第一个yield,再调用next就会执行到下一个yield结束,以此类推
输出结果:
案例:es6 实现抽奖
通过generator ,抽奖的count没有保存在全局中实现count的全局效果
点击页面创建的按钮,进行抽奖,抽奖次数为0之后停止
长轮询的实现