当前位置: 首页 > news >正文

c 做网站怎么显示歌词广州疫情今天最新消息

c 做网站怎么显示歌词,广州疫情今天最新消息,新买的服务器怎么做网站,b2b电子商务网站主要类型ES6 Generator 函数的异步应用主要通过与 Promise 配合使用来实现。这种模式被称为 “thunk” 模式,它允许你编写看起来是同步的异步代码。 特性: 暂停执行:当 Generator 函数遇到 yield 表达式时,它会暂停执行,等待 …

ES6 Generator 函数的异步应用主要通过与 Promise 配合使用来实现。这种模式被称为 “thunk” 模式,它允许你编写看起来是同步的异步代码。

特性:

  1. 暂停执行:当 Generator 函数遇到 yield 表达式时,它会暂停执行,等待 Promise 解决。
  2. 恢复执行:当 Promise 完成(解决或拒绝)时,Generator 函数恢复执行,并返回 yield 表达式的结果。
  3. 错误处理:可以对异步操作中的错误进行捕获和处理。
  4. 链式调用:可以创建一个链式的异步操作,每个操作都在前一个操作完成后开始。

1. 基本的异步 Generator 函数

function delay(time) {return new Promise(resolve => setTimeout(resolve, time));
}function* asyncGenerator() {console.log("Start");yield delay(1000); // 等待1秒console.log("After 1 second");yield delay(1000); // 再等待1秒console.log("After another second");return "Done";
}let gen = asyncGenerator();function runGenerator(g) {let result = g.next();result.value.then(() => {if (!result.done) {runGenerator(g);}});
}runGenerator(gen);

2. 使用 for…of 和 async…await 语法糖

// 假设我们有以下 async generator
async function* asyncGen() {yield await Promise.resolve(1);yield await Promise.resolve(2);yield await Promise.resolve(3);
}// 我们可以使用 for...of 循环和 async...await 语法糖来简化调用
(async () => {for await (let value of asyncGen()) {console.log(value); // 依次输出 1, 2, 3}
})();

3. 处理异步操作中的错误

function* asyncGenWithError() {try {yield Promise.reject("Error occurred!");} catch (e) {console.log(e); // 输出:Error occurred!}
}let genWithError = asyncGenWithError();genWithError.next().value.catch(err => console.log(err));

4. 使用 yield* 委托给其他异步 Generator 函数

function* innerAsyncGen() {yield Promise.resolve("A");yield Promise.resolve("B");
}function* outerAsyncGen() {yield "Start";yield* innerAsyncGen(); // 委托给另一个异步 Generator 函数yield "End";
}let outerGen = outerAsyncGen();function runOuterGenerator(g) {let result = g.next();result.value.then(val => {if (!result.done) {runOuterGenerator(g);}});
}runOuterGenerator(outerGen);
http://www.dinnco.com/news/60880.html

相关文章:

  • 域名如何做网站推广软件一键发送
  • 做php网站时如何建立数据库网站运维
  • 龙岩好工作人才网最新招聘信息搜索引擎优化
  • linux wordpress 主题枣庄网络推广seo
  • 图片点开是网站怎么做电商广告网络推广
  • 四川建设招标网站首页seo专业培训费用
  • cn域名做网站百度账号登陆入口
  • 自己做电影网站怎么赚钱网络营销ppt案例
  • 微网站二级页面怎么做百度有专做优化的没
  • 宝安印刷网站建设网站模板源码
  • 浏览器网站大全百度安全中心
  • 软件技术专业就业方向及前景上海百度整站优化服务
  • 沈阳网站建设的价格深圳seo优化服务
  • 建设方面的知识 网站广告网
  • 电脑可以做网站服务器吗sem优化公司
  • 网站设计酷站电商培训学校
  • 女性时尚资讯+淘宝客模式系列网站源码seo优化服务
  • 网站建设的基本术语百度助手手机下载
  • php在电子商务网站建设中的应用研究 戴书浩开发网站建设
  • 做单页网站要多少钱加盟教育培训哪个好
  • 做外卖网站阿里指数在哪里看
  • 360做网站经常打骚扰电话网站推广的目的
  • wordpress ajax查询文章seo能从搜索引擎中获得更多的
  • 小公司网站建设费用台州百度关键词排名
  • 网站业务需求文档免费建站免费网站
  • 企业做网站电话约见客户的对话重庆网站建设公司
  • 做网站被骗去哪投诉新手怎么学做电商
  • cms网站开发框架网站推广的途径和方法
  • 社交网站开发背景百度推广查询
  • 网站栏目怎么做301定向中国营销网官网