【js自学打卡10】关于异步编程,generator函数等理论引入

一、前人经验

找到了不错的博客,放在前面
Generator 函数的含义与用法
其中还有其他关于ES6异步编程相关的理论讲解博客,在这里记录一下。

二、什么是generator函数

在JavaScript中,Generator 函数是一种可以暂停和恢复执行的函数,它通过function*语法来定义,并使用yield关键字来产出值。Generator 函数返回一个 Generator 对象,该对象符合可迭代协议,因此可以使用for...of循环或其他可迭代消费方法来迭代。
以下是 JavaScript 中 Generator 函数的一些特点和用法:

  1. 定义 Generator 函数:使用function*语法来定义一个 Generator 函数。
  2. 使用yield关键字:在 Generator 函数内部,yield用于暂停函数执行并返回一个值。当再次调用 Generator 对象的next()方法时,函数会从上次暂停的地方继续执行。
  3. 返回 Generator 对象:调用 Generator 函数时,它不会立即执行,而是返回一个 Generator 对象。
  4. 可迭代性:Generator 对象是可迭代的,因此可以通过for...of循环或扩展运算符(...)来迭代。
    下面是一个简单的 JavaScript Generator 函数示例:
function* simpleGenerator() {
    yield 1;
    yield 2;
    yield 3;
}
// 创建 Generator 对象
const gen = simpleGenerator();
// 通过循环来迭代 Generator
for (const value of gen) {
    console.log(value);
}

输出将会是:

1
2
3

每次调用gen.next()时,simpleGenerator函数都会执行到下一个yield表达式,然后返回一个包含valuedone属性的对象。value属性是yield表达式的结果,而done属性是一个布尔值,表示 Generator 是否已经完成。
Generator 函数在处理异步操作、迭代大型数据集、以及其他需要分步骤处理的任务时非常有用。通过 Generator 函数,可以编写更清晰、更易于维护的异步代码。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值