我是靠谱客的博主 安详黄蜂,最近开发中收集的这篇文章主要介绍es6中yield的用法是什么,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

es6中yield的用法是什么

yield这个关键字是用来暂停和恢复一个遍历器函数(的运行)的。

yield是个关键字 ,它的作用是“命令”。和var不同,不是用来声明,但是和return一样,用来告知程序某种状态,return告诉程序要返回什么值(也意味着结束,结束的时候才会返回值嘛),而yield告诉程序当前的状态值,而且你运行到这里暂停一下。

yield是命令型的关键字,所以它的用法是:

[rv] = yield [expression];
登录后复制

rv是可选的,这里不是说它返回一个数组。yield后面的表达式也是可选的。yield的返回值是一个状态值。如果从返回值的角度讲,yield还可以当做是一种运算符,但是由于它的作用是暂停和恢复,所以严格意义上说,不能叫运算符,运算符是用来运算的,而yield是用来“命令”的。

把yield看作一个变量,字符串里面,可以这样使用:

var log = function *() {
  console.log(`you input: ${yeild}`)
}().next(); // 这里会提示错误: yeild undefined
log.next('hello world!');
登录后复制

总结一下yield,实际上:

  • 只能在Generator函数内部使用

  • 运行.next(),遇到一个yield命令,就暂停

  • .next()的返回值表示一个状态{value,done}

  • 再运行.next(),从之前遇到的那个yield [表达式]处(后)继续恢复运行

  • 当.next()传参的时候,yield [表达式]整个被替换为传入的参数。

【相关推荐:javascript视频教程、web前端】

以上就是es6中yield的用法是什么的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是安详黄蜂为你收集整理的es6中yield的用法是什么的全部内容,希望文章能够帮你解决es6中yield的用法是什么所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部