ECMAScript 6

ECMAScript 6 简介

ECMAScript 6(ES6)是JavaScript语言的新一代标准,于2015年6月发布,目标是使JavaScript语言可以更好地用于编写复杂的大型应用程序,成为企业级开发语言。
标准的制定都计划以后每年发布一次标准,使用年份作为标准的版本。由于当前版本是在2015年发布的,所以又称ECMAScript 2015。

ECMAScript和JavaScript的关系

1996年11月,JavaScript的创造者Netscape公司,决定将JavaScript提交给国际化组织ECMA,希望这种语言能够成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的第一版,规定了浏览器脚本语言的标准,并将这种语言稍为ECMAScript,这个版本就是1.0版。
ECMAScript与JavaScript的关系是:前者是后者的规格,后者是前者的一种实现(另外的ECMAScript方言还有Jscript和ActionScript)、在日常场合,这两个词是可以互换的。

部署进度

各大浏览器的最新版本对ES6的支持可以查看http://kangax.github.io/compat-table/es6/。随着时间的推移,支持度越来越高了,ES6的大部分特性都得到实现。
Node.js是JavaScript语言的服务器运行环境,对ES6的支持度比浏览器高。通过Node可以体验更多ES6的新特性。
安装Node后,可以用下面的命令查看Node所有已经实现的ES6特性:

$ node --v8-options | grep harmony
--es_staging (enable all completed harmony features)
--harmony (enable all completed harmony features)
--harmony_shipping (enable all shipped harmony fetaures)
--harmony_modules (enable "harmony modules" (in progress))
--harmony_regexps (enable "harmony regular expression extensions" (in progress))
--harmony_proxies (enable "harmony proxies" (in progress))
--harmony_sloppy_function (enable "harmony sloppy function block scoping" (in progress))
--harmony_sloppy_let (enable "harmony let in sloppy mode" (in progress))
--harmony_unicode_regexps (enable "harmony unicode regexps" (in progress))
--harmony_reflect (enable "harmony Reflect API" (in progress))
--harmony_destructuring (enable "harmony destructuring" (in progress))
--harmony_default_parameters (enable "harmony default parameters" (in progress))
--harmony_sharedarraybuffer (enable "harmony sharedarraybuffer" (in progress))
--harmony_atomics (enable "harmony atomics" (in progress))
--harmony_simd (enable "harmony simd" (in progress))
--harmony_array_includes (enable "harmony Array.prototype.includes")
--harmony_tostring (enable "harmony toString")
--harmony_concat_spreadable (enable "harmony isConcatSpreadable")
--harmony_rest_parameters (enable "harmony rest parameters")
--harmony_sloppy (enable "harmony features in sloppy mode")
--harmony_arrow_functions (enable "harmony arrow functions")
--harmony_new_target (enable "harmony new.target")
--harmony_object_observe (enable "harmony Object.observe")
--harmony_spreadcalls (enable "harmony spread-calls")
--harmony_spread_arrays (enable "harmony spread in array literals")
--harmony_object (enable "harmony Object methods")

上面命令的输出结果会因为Node版本的不同而有所不同。
可以安装ES-Checker(https://github.com/ruanyf/es-checker)模式来检查你的运行环境对ES6的支持情况。

$ npm install -g es-checker
$ es-checker
...
=========================================
Passes 29 feature Detections
Your runtime supports 69% of ECMAScript 6
=========================================

同时,访问http://ruanyf.github.io/es-checker/可以检查你的浏览器对ES6的支持情况。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值