如何用现代JavaScript编写实现异步任务的长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3720个文字,预计阅读时间需要15分钟。
前言:在本文中,我们将探讨JavaScript的异步执行演变,以及它是如何改变我们编写代码的方式的。
我们从最早的Web开发开始,一直到现在流行的异步模式。作为编程语言,JavaScript经历了从同步到异步的重大转变。
前言
在本文中,我们将探讨过去异步执行的 JavaScript 的演变,以及它是怎样改变我们编写代码的方式的。我们将从最早的 Web 开发开始,一直到现代异步模式。
作为编程语言, JavaScript 有两个主要特征,这两个特征对于理解我们的代码如何工作非常重要。首先是它的同步特性,这意味着代码将逐行运行,其次是单线程,任何时候都仅执行一个命令。
随着语言的发展,允许异步执行的新工件出现在场景中。开发人员在解决更复杂的算法和数据流时尝试了不同的方法,从而导致新的接口和模式出现。
同步执行和观察者模式
如简介中所述,JavaScript 通常会逐行运行你编写的代码。即使在最初的几年中,该语言也有这种规则的例外,尽管很少,你可能已经知道了它们:HTTP 请求,DOM 事件和time interval。
如果我们通过添加事件侦听器去响应用户对元素的单击,则无论语言解释器在运行什么,它都会停止,然后运行在侦听器回调中编写的代码,之后再返回正常的流程。
与 interval 或网络请求相同,addEventListener,setTimeout 和 XMLHttpRequest 是 Web 开发人员访问异步执行的第一批工件。
尽管这些是 JavaScript 中同步执行的例外情况,但重要的是你要了解该语言仍然是单线程的。我们可以打破这种同步性,但是解释器仍然每次运行一行代码。
例如检查一个网络请求。
本文共计3720个文字,预计阅读时间需要15分钟。
前言:在本文中,我们将探讨JavaScript的异步执行演变,以及它是如何改变我们编写代码的方式的。
我们从最早的Web开发开始,一直到现在流行的异步模式。作为编程语言,JavaScript经历了从同步到异步的重大转变。
前言
在本文中,我们将探讨过去异步执行的 JavaScript 的演变,以及它是怎样改变我们编写代码的方式的。我们将从最早的 Web 开发开始,一直到现代异步模式。
作为编程语言, JavaScript 有两个主要特征,这两个特征对于理解我们的代码如何工作非常重要。首先是它的同步特性,这意味着代码将逐行运行,其次是单线程,任何时候都仅执行一个命令。
随着语言的发展,允许异步执行的新工件出现在场景中。开发人员在解决更复杂的算法和数据流时尝试了不同的方法,从而导致新的接口和模式出现。
同步执行和观察者模式
如简介中所述,JavaScript 通常会逐行运行你编写的代码。即使在最初的几年中,该语言也有这种规则的例外,尽管很少,你可能已经知道了它们:HTTP 请求,DOM 事件和time interval。
如果我们通过添加事件侦听器去响应用户对元素的单击,则无论语言解释器在运行什么,它都会停止,然后运行在侦听器回调中编写的代码,之后再返回正常的流程。
与 interval 或网络请求相同,addEventListener,setTimeout 和 XMLHttpRequest 是 Web 开发人员访问异步执行的第一批工件。
尽管这些是 JavaScript 中同步执行的例外情况,但重要的是你要了解该语言仍然是单线程的。我们可以打破这种同步性,但是解释器仍然每次运行一行代码。
例如检查一个网络请求。

