ES6生成器用法实例分析

  

本文实例讲述了ES6生成器用法。分享给大家供大家参考,具体如下:

  

<>强语法

  

何为生成器?让我们先看看以下代码:

        函数*俏皮话(名字){   产生“hello”+名称+“!”;   产生“我希望你正在享受博客”;   如果(name.startsWith (X)) {   收益率”很酷你的名字开始X,”+名称;   }   产生“再见!”;   }      之前      

你没有看错,这就是JavaScript代码。是不是和你曾经认识的JavaScript不太一样。这个函数就叫做生成器函数。生成器函数看起来和普通的函数是不是有点相像呢?

  

<强>它们的区别如下:

  

一般的函数以功能开的头,而

。   

.

  

我们看看下一方法的使用:

        比;var iter=俏皮话(“低频”);   (对象发生器)   比;iter.next ()   {价值:“你好低频!”完成:假}   比;iter.next ()   {值:“我希望你正在享受博客”,完成:假}   比;iter.next ()   {价值:“再见!”完成:假}   比;iter.next ()   {值:未定义,完成:真}      之前      

可以看的到,每一次下一方法后,生成器函数就执行到下一个收益率位置处。

  

基本的生成器语法就讲完了。

  

<强>应用

  

生成器可以用来异步编程,我在之前的文章中有过介绍,可以参考前面一篇《基于javascript的异步编程实例详解》

  

但是需要注意的是,生成器并不是用来写异步的,这仅仅是一种黑客手段而已。

  

希望本文所述对大家ECMAScript程序设计有所帮助。

ES6生成器用法实例分析