HoRain云--JavaScript 异步编程

发布时间:2026/11/12 13:04:35

HoRain云--JavaScript 异步编程 HoRain 云小助手个人主页⛺️生活的理想就是为了理想的生活!⛳️ 推荐前些天发现了一个超棒的服务器购买网站性价比超高大内存超划算忍不住分享一下给大家。点击跳转到网站。目录⛳️ 推荐异步的概念什么时候用异步编程回调函数实例实例实例异步 AJAX实例实例异步的概念异步Asynchronous, async是与同步Synchronous, sync相对的概念。在我们学习的传统单线程编程中程序的运行是同步的同步不意味着所有步骤同时运行而是指步骤在一个控制流序列中按顺序执行。而异步的概念则是不保证同步的概念也就是说一个异步过程的执行将不再与原有的序列有顺序关系。简单来理解就是同步按你的代码顺序执行异步不按照代码顺序执行异步的执行效率更高。以上是关于异步的概念的解释接下来我们通俗地解释一下异步异步就是从主线程发射一个子线程来完成任务。什么时候用异步编程在前端编程中甚至后端有时也是这样我们在处理一些简短、快速的操作时例如计算 1 1 的结果往往在主线程中就可以完成。主线程作为一个线程不能够同时接受多方面的请求。所以当一个事件没有结束时界面将无法处理其他请求。现在有一个按钮如果我们设置它的 onclick 事件为一个死循环那么当这个按钮按下整个网页将失去响应。为了避免这种情况的发生我们常常用子线程来完成一些可能消耗时间足够长以至于被用户察觉的事情比如读取一个大文件或者发出一个网络请求。因为子线程独立于主线程所以即使出现阻塞也不会影响主线程的运行。但是子线程有一个局限一旦发射了以后就会与主线程失去同步我们无法确定它的结束如果结束之后需要处理一些事情比如处理来自服务器的信息我们是无法将它合并到主线程中去的。为了解决这个问题JavaScript 中的异步操作函数往往通过回调函数来实现异步任务的结果处理。回调函数回调函数就是一个函数它是在我们启动一个异步任务的时候就告诉它等你完成了这个任务之后要干什么。这样一来主线程几乎不用关心异步任务的状态了他自己会善始善终。实例function print() { document.getElementById(demo).innerHTMLRUNOOB!; } setTimeout(print, 3000);这段程序中的 setTimeout 就是一个消耗时间较长3 秒的过程它的第一个参数是个回调函数第二个参数是毫秒数这个函数执行之后会产生一个子线程子线程会等待 3 秒然后执行回调函数 print在命令行输出 RUNOOB!。当然JavaScript 语法十分友好我们不必单独定义一个函数 print 我们常常将上面的程序写成实例setTimeout(function () { document.getElementById(demo).innerHTMLRUNOOB!; }, 3000);注意既然 setTimeout 会在子线程中等待 3 秒在 setTimeout 函数执行之后主线程并没有停止所以实例setTimeout(function () { document.getElementById(demo1).innerHTMLRUNOOB-1!; // 三秒后子线程执行 }, 3000); document.getElementById(demo2).innerHTMLRUNOOB-2!; // 主线程先执行这段程序的执行结果是RUNOOB-1! // 三秒后子线程执行 RUNOOB-2! // 主线程先执行异步 AJAX除了 setTimeout 函数以外异步回调广泛应用于 AJAX 编程。有关于 AJAX 详细请参见XMLHttpRequest 常常用于请求来自远程服务器上的 XML 或 JSON 数据。一个标准的 XMLHttpRequest 对象往往包含多个回调实例var xhr new XMLHttpRequest(); xhr.onload function () { // 输出接收到的文字数据 document.getElementById(demo).innerHTMLxhr.responseText; } xhr.onerror function () { document.getElementById(demo).innerHTML请求出错; } // 发送异步 GET 请求 xhr.open(GET, https://www.runoob.com/try/ajax/ajax_info.txt, true); xhr.send();XMLHttpRequest 的 onload 和 onerror 属性都是函数分别在它请求成功和请求失败时被调用。如果你使用完整的 jQuery 库也可以更加优雅的使用异步 AJAX实例$.get(https://www.runoob.com/try/ajax/demo_test.php,function(data,status){ alert(数据: data \n状态: status); });❤️❤️❤️本人水平有限如有纰漏欢迎各位大佬评论批评指正如果觉得这篇文对你有帮助的话也请给个点赞、收藏下吧非常感谢! Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧
延伸阅读

更多相关文章

2026/11/9 9:33:05

Sunshine游戏串流:5分钟打造你的私人游戏云终极指南

Sunshine游戏串流:5分钟打造你的私人游戏云终极指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine 你是否曾经想过,将书房里的高性能游戏电脑搬到客厅大屏…

2026/11/9 22:42:29

如何快速构建桌面宠物框架:基于PySide6的完整开发指南

如何快速构建桌面宠物框架:基于PySide6的完整开发指南 【免费下载链接】DyberPet Desktop Cyber Pet Framework based on PySide6 项目地址: https://gitcode.com/GitHub_Trending/dy/DyberPet 在数字时代,桌面宠物框架已经从简单的动画程序演变为…

2026/11/12 13:00:57

山东滨州特种工培训班千万别踩坑,过期证书复审全攻略

山东滨州特种工培训班千万别踩坑,过期证书复审全攻略 证书过期了不知道怎么复审延期,这事儿真的不能拖。很多在山东滨州的特种作业人员,尤其是从鹤壁转岗过来的朋友,往往因为不了解流程,误了复审时间,导致证书失效,直接影响工作安排甚至被单位辞退。…

2026/11/12 13:00:57

高压电工证从哪能查到 你知道上岗必备的查询方法吗

高压电工证从哪能查到 你知道上岗必备的查询方法吗 之前考的证在外省能不能转过来?这是很多特种作业从业者最关心的问题。特别是那些从外省过来工作,或者在不同城市之间频繁跳槽的人,最怕证书不能通用。而高压电工证作为电工类特种作业操作证中的一种,是…

2026/11/12 13:00:57

营口办电工证快速办理官方回应怕考不过白交培训费

营口办电工证快速办理官方回应怕考不过白交培训费 怕考不过白交培训费?营口办电工证快速办理怎么选?现在越来越多的工友开始关注电工证,尤其是营口地区,不少人想趁着政策利好,快速考个证提升收入。但问题来了, 培训费花了,考试挂了怎么办?…

2026/11/12 12:55:57

osta电工证4级有效期多久

电工证4级实操考试心里没底怕挂科?真实经历教你稳过 实操考试心里没底怕挂科,这是很多准备报考 osta电工证4级 的小伙伴最真实的情绪。我认识的不少同学,虽然理论知识背得滚瓜烂熟,但一到实际操作,就手忙脚乱,生怕出错被判定不合格。这不仅仅是…

2026/11/11 12:42:59

电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。…

2026/11/12 0:04:01

工地太忙根本没时间复习考试?学习电工证到哪里学通过率揭秘

工地太忙根本没时间复习考试?学习电工证到哪里学通过率揭秘 工地太忙根本没时间复习考试?你不是一个人。作为一名在南阳卧龙区干了七八年市政公用工程的电工,我深知这个问题的现实性。电工证不仅是工作的“入场券”,更是职业发展的“通行证”,但备考过程…

2026/11/12 0:04:01

双流电工证考别怕挂科!郑州报考避坑指南全攻略

双流电工证考别怕挂科!郑州报考避坑指南全攻略 实操考试心里没底怕挂科?双流电工证考在郑州报名,很多人因为不了解流程、准备不充分,白白浪费时间和金钱。作为三门峡应届工程类毕业生,我也曾经历过这样的焦虑。今天就从零开始,手把手教你如何避开郑州报…

2026/11/12 0:04:01

之前考的证在外省能不能转过来 怎么报名考电工证培训价格多少

之前考的证在外省能不能转过来 怎么报名考电工证培训价格多少 之前考的证在外省能不能转过来?这个问题确实让不少准备换城市工作的朋友犯了难,尤其像电工证这种实操性很强的证书,很多人担心跨省后证书能不能继续用。其实,只要符合相关流程,是可以顺利转…

2026/11/11 20:27:01

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/12 9:51:42

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑