【前端圭臬】十二:JavaScript 异步编程

本文详细介绍了JavaScript异步编程的概念,从回调函数、Promise到async/await的演进过程,阐述了它们之间的关系,并通过实例帮助读者理解异步编程的重要性及其应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

其实早期的 JavaScript 本身并没有提供异步功能,但 Web 应用不断发展,需要这样一种机制去强化自身的表现能力。这篇文章,我们就来看看如何用 JS 实现异步编程,以及异步编程能做什么。

1 什么是异步?

在具体地说 JS 异步之前,我想还是简单来说一下,什么是异步。这个东西我们在实践中时常使用,概念也不复杂,我觉得随便想一想就能举出很多例子。

比如游乐场排队,如果只有一个项目,所有人先来后到,就叫同步。如果有很多项目,虽然每个项目前排队的人群还是先来后到,但不同项目的队伍是自己排自己的,这就叫 异步

说到这里大家可能觉得,同步和异步不就是单线程和多线程吗?没错,使用多线程可以实现异步。然而,异步并不完全是这个意思。

第二个例子,对于我们每个人来说,虽然并不能在 “同一时刻” 处理多件事情,是 “单线程” 的,但并不一定非要把一件事完全处理完,才能干下一件事,我们完全可以在学习途中被基友突然叫去打游戏,打完回来再接着学,这也叫异步。

异步这个概念其实源自于通信学科,指的是通信双方不需要共同的时钟即可完成信息交换。相对的,同步就是指两方要有一致的时钟。

如果我们对编程中的异步下一个简单粗暴的定义,那就是,让代码不必按照书写顺序执行

异步的好处,说白了就是两个字,灵活

2 JS 异

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Evan-Nightly

劝君上当,上当一回

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值