JavaScript

JavaScript (JS) 是一种轻量级解释型(或即时编译)编程语言,具有一等函数。虽然它最出名的是网页的脚本语言,但许多非浏览器环境也使用它,例如Node.jsApache CouchDBAdobe Acrobat。JavaScript 是一种基于原型的、多范式的、单线程的、动态语言,支持面向对象、命令式和声明式(例如函数式编程)风格。

JavaScript 的动态功能包括运行时对象构造、可变参数列表、函数变量、动态脚本创建(通过eval)、对象内省(通过for...inObject 工具),以及源代码恢复(JavaScript 函数存储它们的源代码,并可以通过toString() 检索)。

本节专门介绍 JavaScript 语言本身,而不是特定于网页或其他主机环境的部分。有关特定于网页的API 的信息,请参阅Web APIDOM

JavaScript 标准是ECMAScript 语言规范 (ECMA-262) 和ECMAScript 国际化 API 规范 (ECMA-402)。只要一个浏览器实现了一个功能,我们就会尝试对其进行文档化。这意味着,在某些ECMAScript 新功能提案 已经由浏览器实现的情况下,MDN 文章中的文档和示例可能会使用其中的一些新功能。大多数情况下,这发生在阶段 3 和 4 之间,通常是在规范正式发布之前。

不要将 JavaScript 与Java 编程语言 混淆 - JavaScript 不是“解释型 Java”。 “Java” 和 “JavaScript” 都是 Oracle 在美国和其他国家/地区的商标或注册商标。但是,这两种编程语言的语法、语义和用途截然不同。

JavaScript 核心语言功能的文档(主要是纯ECMAScript)包括以下内容

有关 JavaScript 规范和相关技术的更多信息,请参阅JavaScript 技术概述

教程

学习如何使用指南和教程用 JavaScript 编程。

面向完全初学者

如果您想学习 JavaScript,但之前没有使用过 JavaScript 或编程经验,请访问我们的学习区 JavaScript 主题。该主题中提供的所有模块如下:

JavaScript 初体验

回答一些基本问题,例如“什么是 JavaScript?”、“它是什么样子的?”以及“它能做什么?”,并讨论 JavaScript 的关键功能,例如变量、字符串、数字和数组。

JavaScript 构建块

继续介绍 JavaScript 的关键基本功能,并将注意力转向常见的代码块类型,例如条件语句、循环、函数和事件。

介绍 JavaScript 对象

如果您想更深入地了解 JavaScript 并编写更高效的代码,了解 JavaScript 的面向对象性质非常重要,因此我们提供了此模块来帮助您。

异步 JavaScript

讨论异步 JavaScript,为什么它很重要,以及如何使用它来有效地处理潜在的阻塞操作,例如从服务器获取资源。

客户端 Web API

探讨什么是 API,以及如何在开发工作中经常遇到的最常见 API 中使用一些 API。

JavaScript 指南

JavaScript 指南

一个更详细的 JavaScript 语言指南,针对那些在 JavaScript 或其他语言中有过编程经验的人。

中级

理解客户端 JavaScript 框架

JavaScript 框架是现代前端 Web 开发的重要组成部分,为开发人员提供经过验证的工具来构建可扩展的、交互式的 Web 应用程序。本模块为您提供有关客户端框架如何工作以及它们如何在您的工具集中发挥作用的基本背景知识,然后继续进行一系列教程,涵盖当今最流行的框架。

JavaScript 语言概述

针对来自其他编程语言的人员,概述 JavaScript 的基本语法和语义,以便快速入门。

JavaScript 数据结构

JavaScript 中可用数据结构概述。

相等比较和同一性

JavaScript 提供三种不同的值比较操作:使用===进行严格相等比较、使用==进行松散相等比较,以及Object.is() 方法。

属性的可枚举性和所有权

不同的方法逐个访问一组对象属性,这些方法如何处理属性的可枚举性和所有权。

闭包

闭包是函数及其声明该函数的词法环境的组合。

高级

继承和原型链

解释广泛被误解和低估的基于原型的继承。

内存管理

JavaScript 中的内存生命周期和垃圾回收。

事件循环

JavaScript 具有基于“事件循环”的运行时模型。

参考

浏览完整的JavaScript 参考 文档。

标准对象

了解标准的内置对象ArrayBooleanDateErrorFunctionJSONMathNumberObjectRegExpStringMapSetWeakMapWeakSet 等等。

表达式和运算符

了解 JavaScript 运算符instanceoftypeofnewthis运算符优先级 等等的行为。

语句和声明

了解do-whilefor-infor-oftry-catchletvarconstif-elseswitch 等等 JavaScript 语句和关键字的工作原理。

函数

学习如何使用 JavaScript 的函数来开发您的应用程序。

JavaScript 类是进行面向对象编程的最合适方法。