QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

ECMAScript 2015 正式发布

  • 2015-06-26
  • 本文字数:1347 字

    阅读完需:约 4 分钟

Ecma 国际大会宣布正式批准 ECMA-262 第 6 版,亦即 ECMAScript 2015(曾用名:ECMAScript 6、ES6)的语言规范。

JavaScript 是 Brendan Eich 在 1995 年用 10 天的时间发明的,但是它经历了 20 年的时间才逐渐吸收了在其它现代语言中所流行的一些特性。它并非你初学编程语言的最佳选择,但是却成就了一个非常好的思想:即在浏览器中使用的语言,因此 JavaScript 迅速地吸引了人们的眼球,并于第二年提交了标准化请求。1997 年由 Ecma 发布了 1.0 版本,1998 年的 2.0 版本只进行了小幅修改,1999 年发布 3.0 版本,增加了一些新的特性。

自此以后的几年中 JavaScript 便被冷落,直到 Ajax 作为浏览器中客户端应用的解决方案一举兴起,改进 JavaScript 的工作才重整旗鼓,但是起初并非所有相关人员都完全赞同接下来的发展方向。直到 2008 年,ECMAScript 技术委员会 TC39 就草案制定问题达成一致,决定先进行一次小规模迭代,亦即 2009 年发布的 ECMAScript 5(ES5),随后再进行一次更大规模的迭代,也就是这次所批准的 ES6。

最新版本 JavaScript 的官方名称是 ECMAScript 2015,Ecma 国际意在更频繁地发布包含小规模增量更新的新版本,下一版本将于 2016 年发布,命名为 ECMAScript 2016。从现在开始,新版本将按照 ECMAScript+ 年份的形式发布。

ES6 是继 ES5 之后的一次主要改进,语言规范由 ES5.1 时代的 245 页扩充至 600 页。ES6 增添了许多必要的特性,例如:模块和类,以及一些实用特性,例如 Maps、Sets、Promises、生成器(Generators)等。尽管 ES6 做了大量的更新,但是它依旧完全向后兼容以前的版本,标准化委员会决定避免由不兼容版本语言导致的“web 体验破碎”。结果是,所有老代码都可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。

目前,没有一款完全支持 ES6 的 JavaScript 代理(无论是浏览器环境还是服务器环境),所以热衷于使用语言最新特性的开发者需要将 ES6 代码转译为 ES5 代码。等到主流浏览器完全实现 ES6 特性大概需要一年左右的时间,若想一睹各代理对于 ES6 特性的支持情况,我们推荐大家参考由 kangax 维护的 ECMAScript Compatibility Table

ECMAScript 2016 的制定工作已经启动,许多草案已被提交到委员会,包括以下这些:异步方法、定型对象、并行JavaScript、类修饰符以及observables。虽然委员会正在积极评估这些特性,但我们无法预知它们的未来,其中一些会加入到下一版规范,另一些会加入未来的其它规范,剩下的将最终被遗弃。 TC39 进程解释了新特性从开始到最终被语言采用所经历的各种阶段。

JavaScript 起初发展缓慢,但是最近正在飞速进化,JavaScript 是持久的,未来有更大的发展空间。数以百万计的开发者正受益其中,希望标准化组织会引导其走向社区乐于见到的康庄大道。

扩展阅读:《探索ES6:相关书籍介绍及作者采访》,这篇文章回顾了Axel Rauschmayer 近期撰写的有关深度解析ES6 新特性的书籍。

查看英文原文: ECMAScript 2015 Has Been Approved


感谢邵思华对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-06-26 07:4510202
用户头像

发布了 63 篇内容, 共 134.3 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

全面解析交易所开发:源码、搭建公司选择与开发费用

区块链软件开发推广运营

交易所开发 链游开发 钱包开发 链游开发dapp开发 链游开发dapp开发公链开发

大数据行业怎么定义?是否需要堡垒机?

行云管家

大数据 堡垒机 大数据行业

Axure RP 10 for Mac中文汉化版 附Axure RP 10 永久激活码

Rose

TapData 「邀请函」:前方组队乘风破浪中,要一起加入吗?

tapdata

深圳招聘 生态渠道负责人 销售招聘 SaaS产品海外运营经理 Python开发工程师

TinyVue v3.19.0 正式发布!Tree 组件终于支持虚拟滚动啦!

OpenTiny社区

开源 前端 组件库 OpenTiny TinyVue

鸿蒙网络编程系列45-仓颉版HTTPS证书自选CA校验示例

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

《深入浅出Apache Spark》系列②:Spark SQL原理精髓全解析

数新网络官方账号

sql

基于OLAP湖仓一体架构,火山引擎ByteHouse助力企业降本增效

字节跳动数据平台

OLAP 湖仓一体

7thonline第七在线出席FASHION PRO 30菁英对话:时尚行业深度洞察

第七在线

企业在财务规划过程中,如何避免零基预算的常见陷阱

智达方通

零基预算 财务规划

日照等保测评机构有哪些?电话多少?

行云管家

等保 堡垒机 日照

macOS免费好用的硬盘测速工具 Blackmagic Disk Speed Test

Rose

PPSSPPSDL for mac(PSP游戏模拟器)附PSP游戏安装包 v1.17.1激活版

Rose

从源码分析,MySQL优化器如何估算SQL语句的访问行数

华为云开发者联盟

MySQL innodb GaussDB 慢SQL

用户参与的力量:提升软件开发项目的用户参与度

易成研发中心

项目管理 程序员 软件项目

比特币价格飙升的背后:多重因素的综合分析

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 公链开发代币开发

BOM是什么?怎么创建BOM?BOM有什么分类?

积木链小链

ERP BOM ERP软件

Qualcomm's IPQ53XX Series: IPQ5300, IPQ5332, IPQ5322 Comprehensive Analysis

wifi6-yiyi

WiFi7

好用的延迟摄影后期渲染工具 LRTimelapse Pro 7详细功能介绍

Rose

OpenAI 再发 Sora 新短片,传 Sora 两周内推出;李飞飞团队出品空间智能版 ImageNet丨 RTE 开发者日报

声网

3D渲染和动画制作 Luxion KeyShot2023下载+Luxion KeyShot2023破解教程

Rose

人工智能 | 文生视频大模型

测试人

软件测试

鸿蒙网络编程系列46-仓颉版Web组件加载网页的三种方式

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

怎么在ppt中替换字体?分享3个ppt必备的使用技巧!

职场工具箱

效率工具 职场 PPT 办公软件 AI生成PPT

苹果电脑鼠标键盘捕捉工具 Macro Recorder Enterprise for mac

Rose

ECMAScript 2015正式发布_语言 & 开发_Abel Avram_InfoQ精选文章