JavaScript - 概述



什么是 JavaScript?

JavaScript 是一种动态的计算机编程语言。它轻量级,最常用于网页的一部分,其实现允许客户端脚本与用户交互并创建动态页面。它是一种具有面向对象功能的解释型编程语言。

JavaScript 是一种单线程编程语言,可用于客户端或服务器端开发。它是一种动态类型编程语言,这意味着我们在编写 JavaScript 代码时不必关心变量的数据类型。此外,它还包含控制语句、运算符和对象,如 Array、Math、Data 等。

JavaScript 最初被称为LiveScript,但 Netscape 将其名称更改为 JavaScript,可能是因为 Java 产生的兴奋。JavaScript 于 1995 年在 Netscape 2.0 中首次亮相,名称为LiveScript。该语言的通用核心已嵌入 Netscape 和其他 Web 浏览器中。

ECMA-262 规范定义了核心 JavaScript 语言的标准版本。

  • JavaScript 是一种轻量级、解释型的编程语言。

  • 旨在创建以网络为中心的应用程序。

  • 与 Java 互补并集成。

  • 与 HTML 互补并集成。

  • 开放且跨平台

JavaScript 的历史

JavaScript 由 Brendan Eich 开发,他是 Netscape Communications Corporation 的计算机科学家和程序员。JavaScript 的最初名称是“Mocha”。之后,它更名为“LiveScript”,然后是“JavaScript”。

在 1996 年到 1997 年期间,欧洲计算机制造商协会 (ECMA) 对 JavaScript 进行了标准化。之后,JavaScript 进行了 3 次修订。

ES5 (2009) 中,引入了 Node.js 以将 JavaScript 用作服务器端语言。ES6 (2015) 是 JavaScript 的重大修订,将高级功能引入 JavaScript。

目前,JavaScript 已达到 ES14 版本。ES14 (ECMAScript 2023) 是第 14 个版本,于 2023 年 6 月发布。

客户端 JavaScript

客户端 JavaScript 是该语言最常见的形式。脚本应包含在 HTML 文档中或由 HTML 文档引用,以便浏览器解释代码。

这意味着网页不必是静态 HTML,而是可以包含与用户交互、控制浏览器以及动态创建 HTML 内容的程序。

JavaScript 的客户端机制提供了许多优于传统 CGI 服务器端脚本的优势。例如,您可以使用 JavaScript 检查用户是否在表单字段中输入了有效的电子邮件地址。

当用户提交表单时,将执行 JavaScript 代码,并且只有在所有条目都有效时,才会将其提交到 Web 服务器。

JavaScript 可用于捕获用户发起的事件,例如按钮点击、链接导航以及用户显式或隐式发起的其他操作。

用于 JavaScript 开发的流行客户端库有 ReactJS、NextJS、Vue JS、Angular JS 等。

服务器端 JavaScript

在早期,JavaScript 用于前端开发,为 HTML 页面添加行为。自 2009 年以来,JavaScript 也用作服务器端编程语言来构建可扩展的动态 Web 应用程序。

Node.js 是用于使用 JavaScript 构建应用程序服务器的最佳且最流行的 JavaScript 运行时环境之一。使用Node.js,我们可以在浏览器外部执行 JavaScript 代码并管理服务器任务。服务器任务可以是与数据库、APIS、文件处理或网络通信的交互。由于 Node.js 的事件驱动架构,它比其他服务器端编程语言更快。

JavaScript 的优点

使用 JavaScript 的优点包括:

  • 减少服务器交互 - 您可以在将页面发送到服务器之前验证用户输入。这节省了服务器流量,这意味着服务器负载更轻。

  • 向访问者提供即时反馈 - 他们不必等待页面重新加载即可查看是否忘记输入某些内容。

  • 增强交互性 - 您可以创建在用户将鼠标悬停在上面或通过键盘激活时做出反应的界面。

  • 更丰富的界面 − 您可以使用 JavaScript 来包含诸如拖放组件和滑块等项目,为您的网站访问者提供丰富的界面。

JavaScript 的局限性

我们不能将 JavaScript 视为一门完整的编程语言。它缺少以下重要功能 −

  • 客户端 JavaScript 不允许读取或写入文件。出于安全原因,此功能被限制。

  • JavaScript 不能用于网络应用程序,因为没有此类支持。

  • JavaScript 没有多线程功能。

  • 再次强调,JavaScript 是一种轻量级的解释型编程语言,它允许您在原本静态的 HTML 页面中构建交互性。

命令式与声明式 JavaScript

命令式和声明式是编程范式,JavaScript 遵循这两种范式。

  • 命令式 JavaScript − 在命令式 JavaScript 中,我们以代码描述获取输出的步骤的方式编写代码。因此,我们同时关注代码执行流程和输出。例如,要对所有数组元素求和,如果我们编写 for 循环代码,它会解释获取和的每个步骤。

  • 声明式 JavaScript − 在声明式 JavaScript 中,我们不需要担心执行流程,但我们应该在最后得到正确的输出。例如,我们使用内置的 array.reduce() 方法来获取数组元素的和。在这里,我们不关心 reduce() 方法在库中是如何实现的。

JavaScript 开发工具

JavaScript 的主要优势之一是它不需要昂贵的开发工具。您可以从简单的文本编辑器(如记事本)开始。由于它是在 Web 浏览器上下文中解释的语言,您甚至不需要购买编译器。

以下是一些在使用 JavaScript 开发应用程序时可能有所帮助的免费工具。

  • Visual Studio Code (VS Code) − VS Code 是大多数开发人员用来编写 JavaScript 代码的代码编辑器。它功能丰富,包含各种可以提高任何开发人员生产力的扩展。

  • Chrome 开发者工具 − 程序员可以使用 Chrome 开发者工具调试 JavaScript 代码。但是,他们可以使用任何浏览器的调试工具,因为大多数浏览器都自带此工具。

以上 2 个工具提高了开发人员编写代码的效率。此外,您还可以使用其他工具,如 Git 进行版本控制,Webpack 构建您的应用程序等。

JavaScript 的现状

2015 年,JavaScript 的 ES6 版本发布,并进行了重大增强,包括面向对象的概念、匿名函数、模板字面量等。在2023 年 6 月,JavaScript 的第 14 个版本 ES14 (ECMAScript 2023) 发布。

广告