ES6—42:生成器

简介: ES6—42:生成器

生成器函数的函数声明与调用

image.png

生成器函数的参数传递

image.png

生成器函数实例

// 1s后控制台输出111 2s后控制台输出222 3s后控制台输出333
function one() {
    setTimeout(() => {
        console.log(111);
        iterator.next();
    },1000);
}
function two() {
    setTimeout(() => {
        console.log(222);
        iterator.next();
    },2000);
}
function three() {
    setTimeout(() => {
        console.log(333);
        iterator.next();
    },3000);
}
function * gen() {
    yield one();
    yield two();
    yield three();
}
// 获取迭代器对象
const iterator = gen();
iterator.next();

image.png

相关文章
|
7月前
ES6之生成器
ES6之生成器
|
7月前
|
前端开发
ES6之生成器(Generator)
生成器(Generator)是ES6引入的一种特殊的函数,它可以通过yield关键字来暂停函数的执行,并返回一个包含value和done属性的对象。生成器的概念、作用和原理如下所述:
72 0
|
7月前
ES6 Generator 函数
ES6 Generator 函数
|
29天前
|
JavaScript 前端开发
ES6 迭代器和生成器
总的来说,ES6 迭代器和生成器为 JavaScript 提供了更强大的遍历和控制能力,使代码更加灵活和高效。
22 1
|
2月前
|
自然语言处理 前端开发
如何理解 ES6 中 Generator ?
【10月更文挑战第7天】
|
7月前
|
JavaScript 前端开发
js开发:请解释什么是ES6的Generator函数,以及它的用途。
ES6的Generator函数是暂停/恢复功能的特殊函数,利用yield返回多个值,适用于异步编程和流处理,解决了回调地狱问题。例如,一个简单的Generator函数可以这样表示: ```javascript function* generator() { yield 'Hello'; yield 'World'; } ``` 创建实例后,通过`.next()`逐次输出"Hello"和"World",展示其暂停和恢复的特性。
47 0
ES6学习(九)—Generator 函数的语法
ES6学习(九)—Generator 函数的语法
|
JavaScript 测试技术
基于node.js开发的文章生成器(六、网页版本的文章生成器--工整优化篇)
# 引言 前面我们已经学完了基于express框架下服务器的启动,get请求的接收与处理还有post请求的接收与处理。同时我们使用接口测试工具完成了接口的测试,响应值和接受值返回值都是正常的。那么为什么还有这一章节呢? # 问题的提出 原来我们之前对于get请求和Post请求的接受与处理,虽然可以实现其功能,但是整体代码都是写在一个js文件中的,这就导致我们js文件很臃肿,很难看,维护和开发成本都会大大的提高。 那么我们有没有一种方法,让我们的代码工整性和复用性都大大提高呢? # 解决的思路 我的解决方案是:抽成模块,进行模块化开发。 # 实例 还是拿我们之前的cs.js作为讲解。
|
JSON JavaScript 测试技术
基于node.js开发的文章生成器(五、网页版本的文章生成器--准备篇)
# 引言 这次我们来做网页版文章生成器,首先我们学习一些node.js开发服务器的入门知识。 # 框架的使用与导入 因为node原生开发服务器较麻烦,这里我们采用express框架来开发。 首先我们调出控制台,在控制台中输入 npm i express 然后等待一会儿,我们下载完express之后,通过 import express from 'express';导入 express 模块。 因为我们本项目采取的ES Moudle模块,所以这里我们使用import完成导入。 接下来通过定义app完成初始化 `const app = express();` 之后调用 app中的