首页 > 编程笔记 > JavaScript笔记
阅读:45
JavaScript到底是什么(非常详细)
JavaScript 是一种解释型的脚本语言,它诞生于 1995 年,最初是由 Netscape 公司的布兰登·艾奇(Brendan Eich)设计并命名为 LiveScript,在 Netscape 与 Sun 合作之后被重新命名为 JavaScript。
JavaScript 具有以下特点:
例如,验证表单数据是否为空,验证输入的是不是一个正确的Email地址等。
例如,网页轮播图、网页放大镜、购票选座和数据可视化等。
例如,天气预报实时数据、股市实时数据等。天气预报实时数据例子如下图所示。

图 1 天气预报实时数据
常见的小程序有微信小程序和支付宝小程序等。JavaScript 是开发小程序必要的编程语言。
鸿蒙系统是华为公司的一款基于微内核、耗时 10 年、4000 多名研发人员投入开发、面向 5G 物联网、面向全场景的分布式操作系统。鸿蒙的英文名是 HarmonyOS(意为和谐)。这是一款中国人自己的底层软件系统。华为公司那种敢扛重任、敢啃硬骨头的精神,那种一往无前的必胜信念和决心值得我们学习。
总结一下,需要掌握 JavaScript 的人,包括 JavaScript 开发工程师、全栈工程师、Web 前端开发工程师、移动端前端开发工程师、Node.js 开发工程师、小程序开发工程师、HTML5 开发工程师、鸿蒙开发工程师等。

图 2 2023年中国开发者调查报告编程语言使用排行
TIOBE 编程社区排行是编程语言受欢迎程度的指标,索引每月更新一次。JavaScript 语言在排行榜中通常稳定在前十名内。2024 年 7 月 TIOBE 发布的“编程语言排行榜”如下图所示。

图 3 2024年7月TIOBE发布的“编程语言排行榜”
由图 2 和图 3 可知,JavaScript 是最受开发者欢迎的编程语言之一,并逐渐成为全球网站使用最多的脚本语言。

图 4 JavaScript 组成部分
ECMAScript 与 Web 浏览器没有依赖关系,Web 浏览器只是 ECMAScript 实现可能的宿主环境之一。宿主环境不仅提供基本的 ECMAScript 实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。
例如,小程序中的 JavaScript 由 ECMAScript、小程序框架、小程序 API 组成,和浏览器中的 JavaScript 相比,小程序中的 JavaScript 没有 BOM 和 DOM 对象。
JavaScript 与 Java 的相同之处:
JavaScript 与 Java 的不同之处:
TypeScript 增加了静态类型、类、模块、接口和类型注解等,可用于开发大型的应用。TypeScript 代码需要被编译成 JavaScript 才能执行。
JavaScript 具有以下特点:
- JavaScript 是一种解释型的脚本语言。JavaScript 程序在运行过程中由浏览器中的 JavaScript 引擎逐行解释执行,无须编译。
- JavaScript 是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
- JavaScript 可跨平台,不依赖于操作系统,仅需要浏览器的支持。JavaScript 程序在编写后可以在任意安装有浏览器的机器上运行。目前,JavaScript 已被绝大多数的浏览器支持。
JavaScript的应用场景
1) 表单校验
JavaScript 可以在 HTML 表单数据发往服务器前验证其正确性。例如,验证表单数据是否为空,验证输入的是不是一个正确的Email地址等。
2) 网页特效
JavaScript 可以使网页与用户之间进行动态交互,提高用户的页面浏览体验。例如,网页轮播图、网页放大镜、购票选座和数据可视化等。
3) 数据交互和可视化
JavaScript 可以通过 Ajax 技术与服务器交换数据,使用 ECharts.js 等开源可视化图表库展示数据。例如,天气预报实时数据、股市实时数据等。天气预报实时数据例子如下图所示。

图 1 天气预报实时数据
4) 小程序开发
小程序即用即走、无须下载的特性为用户提供了更便捷的使用方式。常见的小程序有微信小程序和支付宝小程序等。JavaScript 是开发小程序必要的编程语言。
5) 其他开发
除了上述的常见应用场景之外,JavaScript 还可以:- 通过 Node.js 进行服务器端程序开发;
- 通过 electron.js 进行桌面应用开发;
- 在 WebVR/WebXR 标准下开发沉浸式 VR/AR 体验,通过 three.js 创建复杂的 3D 场景、动画和交互式内容,这都是构建元宇宙应用的基础技术;
- 通过 TensorFlow.js、Brain.js、ML5.js 等构建基于 Web 的人工智能应用,比如图像分类、文本分析、语音识别和自然语言处理等;
- 通过 Cocos2d、Unity3D、Babylon.js 等引擎开发游戏;
- 通过 HTML5 和 CSS 开发混合移动应用,打包后可以在 iOS、Android 等多个平台上运行;
- 通过 Ruff.io 来操控各种传感器和执行器设备进行物联网(IoT)嵌入式开发;
- 通过鸿蒙系统的方舟开发框架进行鸿蒙系统应用程序开发。
鸿蒙系统是华为公司的一款基于微内核、耗时 10 年、4000 多名研发人员投入开发、面向 5G 物联网、面向全场景的分布式操作系统。鸿蒙的英文名是 HarmonyOS(意为和谐)。这是一款中国人自己的底层软件系统。华为公司那种敢扛重任、敢啃硬骨头的精神,那种一往无前的必胜信念和决心值得我们学习。
总结一下,需要掌握 JavaScript 的人,包括 JavaScript 开发工程师、全栈工程师、Web 前端开发工程师、移动端前端开发工程师、Node.js 开发工程师、小程序开发工程师、HTML5 开发工程师、鸿蒙开发工程师等。
JavaScript的发展趋势
CSDN 在 2023 年发布的中国开发者调查报告中指出:根据调查数据显示,在编程语言领域,过去一年使用 Java 语言的开发者人数占比 42.9%;随着人工智能的发展,Python 语言的使用量逐渐提升,工作中常用 Python 语言的开发者占比 31.2%;紧随其后的是 JavaScript 语言,占比 26 %,编程语言使用排行榜如下图所示。
图 2 2023年中国开发者调查报告编程语言使用排行
TIOBE 编程社区排行是编程语言受欢迎程度的指标,索引每月更新一次。JavaScript 语言在排行榜中通常稳定在前十名内。2024 年 7 月 TIOBE 发布的“编程语言排行榜”如下图所示。

图 3 2024年7月TIOBE发布的“编程语言排行榜”
由图 2 和图 3 可知,JavaScript 是最受开发者欢迎的编程语言之一,并逐渐成为全球网站使用最多的脚本语言。
JavaScript的组成部分
浏览器中的 JavaScript 由 3 个部分组成,如下图所示。
图 4 JavaScript 组成部分
- ECMAScript:ECMA(European Computer Manufacturers Association,欧洲计算机制造商协会)在 1997 年制定了 ECMA-262 标准。该标准定义了一个名为 ECMAScript 的脚本语言,规定了脚本语言的规范,而 JavaScript 则是依照这个规范来实现的,最新版为 ECMAScript 2024。
- DOM(Document Object Model,文档对象模型):它提供访问和操作网页内容的方法和接口。
- BOM(Browser Object Model,浏览器对象模型):它提供与浏览器交互的方法和接口。
ECMAScript 与 Web 浏览器没有依赖关系,Web 浏览器只是 ECMAScript 实现可能的宿主环境之一。宿主环境不仅提供基本的 ECMAScript 实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。
例如,小程序中的 JavaScript 由 ECMAScript、小程序框架、小程序 API 组成,和浏览器中的 JavaScript 相比,小程序中的 JavaScript 没有 BOM 和 DOM 对象。
JavaScript与其他语言
在初步了解 JavaScript 之后,下面介绍 JavaScript 与其他语言的关系。1) JavaScript与HTML、CSS的关系
HTML、CSS 和 JavaScript 共同构建了我们看到的网页展示和交互。其中 HTML 定义网页的结构,CSS 描述网页的样式,JavaScript 定义网页的行为。它们的关系可以简述为:- HTML 可以独立存在,HTML 一般需要 CSS 和 JavaScript 来配合使用,否则单一 HTML 文档的功能和展示效果不理想;
- CSS 一般不能脱离 HTML 页面;
- JavaScript 可以脱离 HTML 和 CSS 而独立存在;JavaScript 可以操作 HTML 和 CSS。
2) JavaScript与Java的关系
Netscape 公司将 LiveScript 命名为 JavaScript,是因为 Java 是当时最流行的编程语言,带有“Java”的名字有助于这门新生语言的传播。JavaScript 与 Java 的相同之处:
- 它们的语法和 C语言都很相似;
- JavaScript 在设计时参照了 Java 的命名规则。
JavaScript 与 Java 的不同之处:
- JavaScript 是解释型语言,Java 是编译型语言;
- JavaScript是弱类型语言,Java是强类型语言;
- JavaScript 的面向对象是基于原型实现的,Java是基于类实现的。
3) JavaScript与TypeScript的关系
TypeScript 是微软公司推出的开源语言,是 JavaScript 类型的超类,可以使用 JavaScript 中的所有代码和编程概念。它是为了使 JavaScript 的开发变得更加容易而创建的。TypeScript 增加了静态类型、类、模块、接口和类型注解等,可用于开发大型的应用。TypeScript 代码需要被编译成 JavaScript 才能执行。
相关文章
- 《HTML5+CSS3+JavaScript从入门到精通(标准版)》PDF下载(高清完整版)
- 《HTML5+CSS3+JavaScript从入门到精通(微课精编版)(第2版)》PDF下载(高清完整版)
- 《HTML5+CSS3+JavaScript从入门到精通》PDF下载(高清完整版)
- 《HTML5+CSS3+JavaScript从入门到精通》PDF下载(高清完整版)
- 《HTML5+CSS3+JavaScript 从入门到项目实践》PDF下载(高清完整版)
- 《从0到1 HTML+CSS+JavaScript快速上手》PDF下载(高清完整版)
- JavaScript是什么?JavaScript简介
- JavaScript中的几个重要概念
- JavaScript转义字符
- JavaScript是什么