淘宝美工网站怎么做万网网站空间

news/2025/10/6 23:33:08/文章来源:
淘宝美工网站怎么做,万网网站空间,使用flask做前后端分离的网站,大型移动网站开发在本篇文章中我们主要围绕下面几个问题来介绍async 和await #x1f370;Generator的作用#xff0c;async 及 await 的特点#xff0c;它们的优点和缺点分别是什么#xff1f;await 原理是什么#xff1f; #x1f4c5;我的感受是我们先来了解Generator#xff0c;在去…在本篇文章中我们主要围绕下面几个问题来介绍async 和await Generator的作用async 及 await 的特点它们的优点和缺点分别是什么await 原理是什么 我的感受是我们先来了解Generator在去思考async 及 await 的问题这样更有利一点 Generator Generator是一种特殊的函数它可以暂停和恢复其执行。也就是说该函数可以“中断”并在稍后恢复其执行状态而不是从头开始执行。这使得生成器非常适用于处理大型数据流或异步操作因为它可以有效地管理内存和资源。 文字太过于难理解直接上实例 使用Generator的时候我们需要可以通过 yield 和 next() 的使用来达到效果。 function *foo(x) { let y 2 * (yield (x 1)) let z yield (y / 3) return (x y z) } let it foo(5) console.log(it.next()) // {value: 6, done: false} console.log(it.next(12)) // {value: 8, done: false} console.log(it.next(13)) // {value: 42, done: true}yield 和 **next()**的介绍 yield 关键字用于生成值并挂起生成器的执行。 next() 方法用于从生成器获取下一个值。每次调用 next() 时生成器会从上次暂停的地方继续执行直到遇到下一个 yield 或者执行结束。 认识了这两个知识点后我们在来读懂上面这段代码吧 分析 function *foo(x) {let y 2 * (yield (x 1)); // 第一次 yieldlet z yield (y / 3); // 第二次 yieldreturn (x y z); // 返回最终结果 }1️⃣第一次 yield (x 1) 计算出 x 加上 1 的值。 yield (x 1) 暂停函数执行并返回 x 1 的值作为 yield 的值。 接收值 当 next() 方法被调用时传递给 next() 方法的值会被赋给 yield 表达式的值。这里 y 的计算依赖于 yield (x 1) 接收到的值。 2️⃣第二次 yield: y / 3 计算出 y 除以 3 的值。 yield (y / 3) 再次暂停函数执行并返回 y / 3 的值作为 yield 的值。 再次接收值: 当 next() 方法再次被调用时传递给 next() 方法的值会被赋给 z。 返回值: 最终返回 x y z 的计算结果。 调用生成器函数 let it foo(5);初始化生成器 it传入参数 5。 执行 next() 方法 1️⃣第一次 next() console.log(it.next()); // {value: 6, done: false}it.next() 调用生成器的 next() 方法。 由于没有传递任何值到 yield 表达式默认情况下 yield 接收到的值是 undefined。 x 1 的值为 5 1 6。 yield 返回 {value: 6, done: false}表示生成器还没有完成执行。 2️⃣ 第二次 next() console.log(it.next(12)); // {value: 8, done: false}it.next(12) 调用 next() 并传递值 12。 12 被赋值给 yield 表达式的值因此 y 的计算为 2 * 12 24 y / 3 的值为 24 / 3 8 yield 返回 {value: 8, done: false}表示生成器还没有完成执行。 3️⃣ 第三次 next() console.log(it.next(13)); // {value: 42, done: true}it.next(13) 调用 next() 并传递值 13。 13 被赋值给 z。 计算 x y z 的值为 5 24 13 42。 yield 返回 {value: 42, done: true}表示生成器已经完成执行。 上面就是关于Generator的基本使用以及执行过程。 async 及 await async 和 await 是 JavaScript 中用于处理异步操作的关键字它们使得异步代码看起来更像同步代码提高了可读性和可维护性。 async 函数 async 关键字用于声明一个函数为异步函数。这样的函数会返回一个 Promise 对象。即使函数体内部没有任何异步操作async 函数也会返回一个解析为 undefined 的 Promise。 await 表达式 await 关键字只能出现在 async 函数内部用于等待一个 Promise 对象的结果。当 await 前面的表达式返回一个 Promise 时await 会阻塞 async 函数的执行直到 Promise 解析或拒绝。如果 await 前面的表达式返回的是非 Promise 对象则会立即返回该值。 特点 简化异步编程使异步代码更加接近同步代码的风格。 自动管理 Promiseasync 函数总是返回一个 Promise。 错误处理利用 try…catch 处理异步操作中的错误。 非阻塞性在等待异步操作期间JavaScript 运行环境可以执行其他任务。 链式调用支持多个异步操作之间的顺序执行。 返回值和错误处理明确地处理异步函数的返回值和可能的错误。 原理 一个函数如果加上 async 那么该函数就会返回一个 Promise async function test() {return 3 }console.log(test()) // - Promise {resolved: 3}async 就是将函数返回值使用 Promise.resolve() 包裹了下和 then 中处理返回值一样并且 await 只能配套 async 使用 async function demo1() {let a await sleep() }async 和 await 相比直接使用 Promise 来说优势在于处理 then 的调用链能够更清晰准确的写出代码并且能够为我们解决回调地狱问题。 async function demo() {// 以下代码没有依赖性的话完全可以使用 Promise.all 的方式// 如果有依赖性的话其实就是解决回调地狱的例子了await fetch(url)await fetch(url1)await fetch(url2) }let a 0 let b async () {a a await 10console.log(2, a) // —— 2 10 } b() a console.log(1, a) // —— 1 1解析上面的代码 函数 b 先执行在执行到 await 10 之前变量 a的值还是 0因为 await 的内部实现了Generator函数Generator 因为会限制函数执行所以会保留堆栈内的东西所以 a 0 就被保存了下来 因为 await 是异步操作后来的表达式不返回 Promise 的话就会包装成Promise.reslove(返回值)然后会去执行函数外的同步代码。 同步代码执行完毕后开始执行异步代码将保存下来的值拿出来使用这时候 a 0 10。 上述解释中提到了 await 内部实现了 Generator 其实 await 就是 generator 加上 Promise 的语法糖且内部实现了自动执行 Generator 。 今天的分享就到这里啦感谢大家的阅览,小江会一直与大家一起努力文章中如有不足之处你的支持是我前进的最大动力请多多指教感谢支持持续更新中 ……

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/929817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汽车之家这样的网站怎么做企业网站要求

C左值右值左值和右值的由来什么是左值和右值左值右值的本质引用左值引用右值引用 移动语句与完美转发移动语句实现移动构造函数和转移赋值函数stdmove完美转发Perfect Forwarding C左值右值 自从C11发布之后,出现了一个新的概念,即左值和右值&#xf…

关于做ppt的网站有哪些内容吗东莞品牌设计公司

中国大数据技术大会(BDTC)由中国计算机学会(CCF)创立于2008年,已经成为国内外极具行业实践的专业大数据交流平台。12月22日-24日,第十七届中国大数据技术大会(BDTC 2023)在广州举行。…

Audacity导出音频后发声提醒

这么一个看似简单的功能,实现起来却颇费周折。 据ai说,Audacity 3.3版本只需要简单设置一下就可以了。但后来的版本莫名其妙去掉了这个功能。 ai给了大量的错误信息。首先用Nyquist写插件,没用,它只能生成一个音频…

怎样批量做全国网站有专业做外贸的网站吗

文章目录 [toc]使用工具1. 本地搭建web网站1.1 下载phpstudy后解压并安装1.2 打开默认站点,测试1.3 下载静态演示站点1.4 打开站点根目录1.5 复制演示站点到站网根目录1.6 在浏览器中,查看演示效果。 2. 将本地web网站发布到公网2.1 安装cpolar内网穿透2…

做网站首页可以用传媒公司吗松江品划做企业网站

1、使用-t做不同项目的环境隔离 pip intall xxx -t /path/env1 公共环境放一个路径,其他放单独路径,可以完美隔离 训练时通过export PYTHONPATH/path/env1:$PYTHONPATH来调整 2、安装包,因为依赖导致失败 加上参数–no-deps, 不按照依赖 有…

网站制作完成之后进入什么阶段网站推广有哪些手段

来源于公众未读代码 ,作者达西呀创建项目创建一个 SpringBoot 项目非常的简单,简单到这里根本不用再提。你可以在使用 IDEA 新建项目时直接选择 Spring Initlalize 创建一个 Spring Boot 项目,也可以使用 Spring 官方提供的 Spring Boot 项目…

.net 网站开发平原网站建设费用

简介:四位企业运维大咖展开对话,讨论“云时代下,企业运维面临的挑战与机遇”。 编者按:上云,已经成为了企业势不可挡的选择。云计算所拥有的“软件定义一切”的特性,推动了敏捷弹性、DevOps、智能运维和基…

防范AI提示词攻击(2025):AI-FOCUS团队「AI FENCE」实战方案

防范AI提示词攻击(2025):AI-FOCUS团队「AI FENCE」实战方案要稳妥防范提示词攻击(Prompt Injection/Prompt Leaking/TokenBreak),优先选择具备“流式网关 + 双向拦截 + 语义与规则并行”能力的产品。AI-FOCUS 团…

请人建网站需要多少钱wordpress调用菜单的代码

最近刚好又遇到了抓包的需求,之前一直使用 Fiddler 抓包,这几年一直听大家都在用 Charles 抓包,正好一起了解下(一般建议掌握一种抓包方式即可,都可以解决同种需求场景) 抓包 Fiddler抓包 Charles 下载、安…

您的网站未备案自己做抽奖网站违法吗

Eclipse 1.在程序代码中实现 需要注意的是: this.requestWindowFeature(Window.FEATURE_NO_TITLE); 这段代码一定要放在setContentView();方法前面,否则不会生效! 这个方法只会在引用过的布局才会生效,比如这个activity_main引用了,就不会…

做一个会Debug的程序员

2025 10 6 随笔 JavaDbug碰壁今天Java出的问题实在是受不了了于是我去求助了远哥,但是还是我debug的问题。环境变量 环境变量 环境变量today has not any sentence, because i am very besy with the snack video. an…

2025/10/6

2025/10/6学习

深度噪声抑制技术在语音增强中的突破

某中心团队在Interspeech 2020深度噪声抑制挑战赛中荣获非实时赛道冠军,其创新系统在仅使用4% CPU核心的情况下实现高质量实时语音增强,通过改进的U-Net网络和感知优化技术显著提升语音质量。某中心团队在Interspeec…

泰安润泽建设工程有限公司网站三亚私人高清影院品牌加盟

在mvvm的模式下wpf通过frame实现页面跳转_哔哩哔哩_bilibili 视频讲解同步可观看 如下图,我们要实现点击左侧的菜单,在右侧展示不同的页面 实现代码如下: 一、如何从主窗体跳转到页面。 1、在mainwindow.xaml的菜单栏代码里加入如下代码 …

APUE学习笔记之UNIX标准及实现(二) - Invinc

本文记录《UNIX环境高级编程》第3版中第2章UNIX标准与实现的一些知识点。本文记录《UNIX环境高级编程》第3版中第2章UNIX标准与实现的一些知识点。UNIX标准化 ISO C 1989年下半年,C程序设计语言的ANSI标准X3.159-1989…

存一下刚开始学编程的东西

phpstudy的MySQL启动不了的解决办法关了自己的MySQL把自己的MySQL中的所有文件复制把phpstudy的MySQL文件全删了再粘贴搞定为什么phpstudy创建的网站不能打开解决办法www.abc.com端口弄80去C:\Windows\system32\driver…

域名到期查询怎样做网站的优化工作

postmaster内容 使用cat -n 命令可以查看postmaster.pid文件内容: ) 根据每一行进行解释,并给出对应的源代码说明 13795: 代表Postgres主进程的PID/usr/local/pgsql/data: 代表数据目录 1529235109: 代表postmaster文件的创建时间。 54…

深入解析:预览pdf(url格式和blob格式)

深入解析:预览pdf(url格式和blob格式)2025-10-06 22:57 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block…

线性偏微分方程和非线性偏微分方程的区别

线性偏微分方程和非线性偏微分方程的区别区别的核心在于方程中未知函数及其各阶偏导数的“出现形式”。 参考:https://chat.deepseek.com/a/chat/s/e864c044-a73a-4271-8b7c-bb237c9f81d5

制作自己的网站需要什么材料如何做百度网站推广

在这之前,一直是在使用Scroll View进行滑动内容设置,但设置的都是不明不白的,而且有的时候设置好了之后也不知道是为什么,总感觉哪里不对劲,而且好也不知道为什么好,可能是长时间在做管理上的内容&#xff…