JavaScript是互联网上最流行的脚本语言。它诞生于1995年,当时,它的主要目的是处理以前由服务端语言(如Perl)负责的一些输入验证操作。如今,JavaScript的用途早已不再局限于简单的数据验证,而是具备了与浏览器窗口及其内容等几乎所有方面交互的能力。今天的JavaScript已经成为一门功能全面的编程语言,能够处理复杂的计算机和交互,拥有了闭包、匿名(lambda,拉姆达)函数,甚至元编程等特性

什么是ECMAScript

ECMAScript,简称ES,是由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)按照ECMA-262和ISO/IEC 16262标准制定的一种脚本语言规范。

JavaScript 与 ECMAScript 的关系

JavaScript是按ECMAScript规范实现的一种脚本语言,其他的还有JScript、ActionScript。这三种语言还提供了ECMA规范外的额外功能。

虽然JavaScript和ECMAScript通常都被人们用来表达相同的含义,但JavaScript的含义却比ECMAScript中规定的要多得多。一个完整的JavaScript应该由下面三个不同的部分组成

  • 核心(ECMAScript),提供核心语言功能
  • 文档对象模型(DOM),提供访问和操作网页内容的方法和接口
  • 浏览器对象模型(BOM),提供与浏览器交互的方法和接口

ECMAScript

由ECMA-262定义的ECMAScript与Web浏览器没有依赖关系。实际上,这门语言本身并不包含输入和输出定义。ECMAScript-262定义的只是这门语言的基础,而在此基础之上可以构建更完善的脚本语言。我们常见的Web浏览器只是ECMAscript实现可能的宿主环境之一。宿主环境不仅提供基本的ECMAScript实现,同时也会提供该语言的扩展,以便语言与环境之间对接交互。这这些扩展—如DOM,则利用ECMAScript的核心类型和语法提供更多具体的功能,以便实现针对环境的操作。其他宿主环境包括Node(一种服务端JavaScript平台)和AdobeFlash。

ECMAScript 版本

JavaScript 已经由 ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。

年份 名称 描述
1997 ECMAScript 1 第一个版本
1998 ECMAScript 2 版本变更
1999 ECMAScript 3 添加正则表达式 添加 try/catch
ECMAScript 4 没有发布
2009 ECMAScript 5 添加 "strict mode",严格模式 添加 JSON 支持
2011 ECMAScript 5.1 版本变更
2015 ECMAScript 6 添加类和模块
2016 ECMAScript 7 完善ES6规范,还包括两个新的功能:增加指数运算符 (**) 增加 Array.prototype.includes
2017 ECMAScript 8 增加新的功能,如并发、原子操作、Object.values/Object.entries、字符串填充、promises、await/asyn等等。

ECMAScript 6(ES6) 叫也称为 ECMAScript 2015(ES2015)。

ECMAScript 7(ES6) 也称为 ECMAScript 2016(ES2016)。

内容来源于网络如有侵权请私信删除
你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!

相关课程