MDN wants to talk to developers like you: https://qsurvey.mozilla.com/s3/8d22564490d8

JavaScript ( JS ) 是一种轻量级解释型的,或是JIT编译型的程序设计语言,有着 函数优先 (First-class Function) 的编程语言。虽然它是作为开发web页面的脚本语言而出名的,但是在很多非浏览器环境中也使用JavaScript,例如 node.js 和 Apache CouchDB。JS是一种基于原型、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如:函数式编程)编程风格。了解更多 关于JavaScript

本部分将专注于 JavaScript 语言本身,而非局限于网页或其他宿主环境。想要了解网页有关的 APIs ,请参考 Web APIs 以及 DOM

ECMAScript 是 JavaScript 的标准。截至 2012 年,所有的现代浏览器都完整了支持  ECMAScript 5.1,旧式的浏览器至少支持 ECMAScript 3 标准。在2015年6月17日,ECMA国际组织发布了 ECMAScript 的第六版,该版本正式名称为ECMAScript 2015,但通常被称为 ECMAScript 6 或者ES6。自此,ECMAScript每年发布一次新标准。本文档目前覆盖了最新ECMAScript的草案,也就是ECMAScript2018

不要将 JavaScript 与 Java 编程语言混淆。虽然“Java”和“JavaScript”都是 Oracle 公司在美国和其他国家注册(或未注册)的商标,但是这两门语言在语法、语义与用途方面有很大不同。

教程

学习使用指南和教程去编写JavaScript程序。

为初学者准备

如果你想学习JavaScript,苦于没有过JavaScript或者其他语言的编程经验,你可以你可以投入到我们的JavaScript 主题学习区。那里有完整的学习资源:

JavaScript 起步
回答一些基本问题,比如“JavaScript 是什么?”、“和什么相似?”、“可以做什么?”;同时还讨论如变量、字符串、数值和数组等 JavaScript 的关键特性。
JavaScript 基本结构
继介绍了 JavaScript 基本的关键特性后,将我们的注意力转移到常见的诸如条件判断语句、循环、函数、事件等代码块儿类型上。
JavaScript 对象介绍
如果你想进一步使用该语言撰写更有效率的代码,理解 JavaScript 面向对象的精髓是很重要的,因此我们提供了该模块来帮助你理解它。

JavaScript 指南

JavaScript 指南
一份更详尽的 JavaScript 指南,适用于有过 JavaScript 或其他语言编程经验的读者。

中级内容

JavaScript 深入理解
为那些有 JavaScript 基础的朋友们深入介绍 JavaScript。
JavaScript 数据结构
JavaScript 数据结构的概览
如何使用比较操作符
JavaScript 提供了三种比较操作符,包括严格比较操作符 === 和非严格的比较操作符 ==,以及 Object.is() 方法。

高级内容

继承和原型的链式结构
给受到普遍误解和低估的基于原型的继承做一个详细解释。
严格模式
严格模式规定不能使用未定义的变量。严格模式是对ECMAScript 5 的严格限制,以求得更高效的性能和更便利的调试。
JavaScript 类型数组
为使 JavaScript 处理原始二进制数据而提供的类型数组。
内存管理
JavaScript 中的内存生命周期和垃圾回收机制。
并发模型以及事件循环
JavaScript 现加入了基于“事件循环”的并发模型。

参考

浏览完整的 Javascript 参考文档。

标准对象
标准的内置对象例如 Array, Boolean, Date, Error, Function, JSON, Math, Number, Object, RegExp, String, Map, Set, WeakMap , WeakSet 以及其他对象
表达式和运算符
运算符的作用:instanceof, typeof, new, this运算符优先级,以及其他运算符。
语句和声明
了解 do-while, for-in, for-of, try-catch, let, var, const, if-else, switch 以及其他语句和关键字的作用。
函数
学习如何使用 JavaScript 函数来开发你的应用。

工具和资源

有助于您编写和调试 JavaScript 代码的有用工具。

Firefox 开发工具
包括 Scratchpad, Web Console, JavaScript Profiler, Debugger 等等
JavaScript Shells
允许您快速测试 JavaScript 代码片段的运行环境。
TogetherJS

添加TogetherJS到您的网站,让用户实时互助,协作更简单。

Stack Overflow
StackOverflow 上的 JavaScript 问答。
JavaScript版本和发行记录
浏览 JavaScript的历史版本特性和实现情况.
JSFiddle
编辑 JavaScript, CSS, HTML 并获得实时结果。使用外置资源,并和你的团队在线合作。

加入 JavaScript 社区

请选择你喜欢的方式加入我们: