应用场景:在函数执行时,需要请求数据,可以通过yield暂停执行,等到数据获取完成,再继续执行。
generator函数——中间能停
<script>//generat卵磷脂络合碘片or-生成器function *show(){// 声明格式为:*函数()alert('a');yield;// 告诉函数“到哪停”alert('b');}let genObj = show();console.log(g民主生活会内容enObj);genObj.next(); //next一次,函数走一次,停在yield的节点处,类似于,踹一脚,走一步genObj.next();<青年大学习第十季第四期答案/script>
yield可以传参,但是只保留最后一个参数,前面传的参数无效
//generator-生成器function *show(){// 声明格式为:*函数()alert('a');let a = yield;// 告诉函数“到哪停”alert('b');alert(a)}let gen = show();gen.next(12); //next一次,函数走一次,停在yield的节点处,类似于,踹一脚,走一步gen和服图片.next(5);
yield后面跟东西(yield返回,其返回的值为函数执行暂停时的中间值)
function *show(){// 声明格式为:*函数()alert('a');yield 12;// 告诉济南有哪些大学函数“到哪停”alert('b');}let gen = show();let res1 = gen.next();console.log(res1);// {value: 12, done: fal}let res2 = gen.next();return 20;console.log(res2);// {value: 20, done: true}
在实际开发中generator的运行形式:(下面runner是一个封装好的方法)
![在
本文地址:https://blog.csdn.net/weixin_44682587/article/details/112552967
本文发布于:2023-04-09 01:07:51,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/74ffa4fc3e73dfc846be74124abdc1fe.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:es6中的generator yield.doc
本文 PDF 下载地址:es6中的generator yield.pdf
留言与评论(共有 0 条评论) |