博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Generator 简介
阅读量:6413 次
发布时间:2019-06-23

本文共 627 字,大约阅读时间需要 2 分钟。

      Generator 就是一种状态机,封装多个内部状态。

      执行 Generator 函数会返回一个遍历器对象(),也就是说,Generator 函数除了状态机,还是一个遍历器对象生成函数。返回的遍历器对象,可以依次遍历 Generator 函数内部的每一个状态。

       形式上,Generator 函数是一个普通函数,但是有两个特征。一是,function关键字与函数名之间有一个星号;二是,函数体内部使用yield表达式,定义不同的内部状态(yield在英语里的意思就是“产出”)。

      然后,Generator 函数的调用方法与普通函数一样,也是在函数名后面加上一对圆括号。不同的是,调用 Generator 函数后,该函数并不执行,返回的也不是函数运行结果,而是一个指向内部状态的指针对象,也就是上一章介绍的遍历器对象(Iterator Object)。

      下一步,必须调用遍历器对象的next方法,使得指针移向下一个状态。也就是说,每次调用next方法,内部指针就从函数头部或上一次停下来的地方开始执行,直到遇到下一个yield表达式(或return语句)为止。换言之,Generator 函数是分段执行的,yield表达式是暂停执行的标记,而next方法可以恢复执行

      详情:http://es6.ruanyifeng.com/#docs/generator

 

转载于:https://www.cnblogs.com/cnlg123/p/8467069.html

你可能感兴趣的文章
流程控制案例
查看>>
进程与线程
查看>>
linux部署时间服务器出现错误no server suitable for synchronization found
查看>>
日志备份和按时间删除日志脚本实现
查看>>
cd in bash
查看>>
rspamd 动态 add_header
查看>>
降低Redis内存占用
查看>>
Docker仓库Harbor配置LDAP并开启TLS认证
查看>>
NTLDR is missing
查看>>
通用权限管理系统组件 (GPM - General Permissions Manager) 中实现岗位的维护
查看>>
python内置函数与使用
查看>>
Linux route指定静态路由配置
查看>>
java操作redis
查看>>
一个简单的Dockerfile
查看>>
ajax原理
查看>>
Lambda表达式
查看>>
读懂Netty服务端开发(附学习代码)
查看>>
送给即将踏入软考征途的你
查看>>
这个图片功能咋生成的?
查看>>
使用jQuery和CSS创建一个粘性标题栏
查看>>