ES6 标准入门(1)--简介

Posted by liveipool on January 27, 2017

ECMAScript6 简介

有很多问题在网络上被包装了太多次,解释得千奇百怪,但用规范的语言来描述,竟是如此简单。

这一系列博客均是对阮一峰老师的《ES6标准入门》的学习总结。以下为几个重要的链接:

ES6 标准入门: http://es6.ruanyifeng.com/
ECMAScript 2015 规范: http://www.ecma-international.org/ecma-262/6.0/index.html
ECMAScript 2017 草案: https://tc39.github.io/ecma262/
各大浏览器对ES6及以上版本的支持情况:http://kangax.github.io/compat-table/es6/

ECMAScript 6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

ES6与ECMAScript 2015的关系

2011年,ECMAScript 5.1版发布后,就开始制定6.0版了。因此,”ES6”这个词的原意,就是指JavaScript语言的下一个版本。

标准的制定者想让标准的升级成为常规流程:任何人在任何时候,都可以向标准委员会提交新语法的提案,然后标准委员会每个月开一次会,评估这些提案是否可以接受,需要哪些改进。如果经过多次会议以后,一个提案足够成熟了,就可以正式进入标准了。这就是说,标准的版本升级成为了一个不断滚动的流程,每个月都会有变动。

标准委员会最终决定,标准在每年的6月份正式发布一次,作为当年的正式版本。接下来的时间,就在这个版本的基础上做改动,直到下一年的6月份,草案就自然变成了新一年的版本。这样一来,就不需要以前的版本号了,只要用年份标记就可以了。

ES6的第一个版本,就这样在2015年6月发布了,正式名称就是《ECMAScript 2015标准》(简称ES2015)。2016年6月,小幅修订的《ECMAScript 2016标准》(简称ES2016)如期发布,这个版本可以看作是ES6.1版,因为两者的差异非常小(只新增了数组实例的includes方法和指数运算符),基本上是同一个标准。根据计划,2017年6月将发布ES2017标准。

因此,ES6既是一个历史名词,也是一个泛指,含义是5.1版以后的JavaScript的下一代标准,涵盖了ES2015、ES2016、ES2017等等,而ES2015则是正式名称,特指该年发布的正式版本的语言标准。