ES6学习—Generator 函数的语法

Posted 乘风破浪的程序媛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ES6学习—Generator 函数的语法相关的知识,希望对你有一定的参考价值。

ES6学习(九)—Generator 函数的语法

  • Generator 函数是 ES6 提供的一种异步编程解决方案,语法行为与传统函数完全不同。

  • Generator函数是一个状态机,内部封装了不同状态的数据用来生成遍历器对象,可暂停函数(惰性请求),yield可暂停,next方法可以启动,每次返回的是yield后的表达式结果

Generator函数的特点:

  • function函数与函数名之间有一个星号

  • 内部用yield表达式来定义不同的状态
    在这里插入图片描述

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

  • 调用next方法函数逻辑开始执行,而到yield表达式停止返回 {value:yield后的表达式结果为undefined,done:false/true} 再次调用next方法从上一次停止时的yield处开始,直到最

  • yield语句的返回结果通常是undefined ,当调用next方法时传参内容会作为启动时yield语句的返回值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

以上是关于ES6学习—Generator 函数的语法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript的ES6语法9generator函数之yield关键字

JavaScript的ES6语法11generator实例-KOA

Generator函数语法解析

初步学习javascript的generator函数

ES6之Generator 函数(生成器)的语法

ES6之Generator