ECMAScript 6 简介

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

 

ECMAScript 和 JavaScript 的关系

            1996年11月,JavaScript的创造者Netscape公司,决定将JavaScript提交给国际标准化组织ECMA,但愿这种语言可以成为国际标准。次年,ECMA发布262号标准文件(ECMA-262)的初版,规定了浏览器脚本语言的标准,并将这种语言称为ECMAScript,这个版本就是1.0版。git

该标准从一开始就是针对JavaScript语言制定的,可是之因此不叫JavaScript,有两个缘由。一是商标,Java是Sun公司的商标,根据受权协议,只有Netscape公司能够合法地使用JavaScript这个名字,且JavaScript自己也已经被Netscape公司注册为商标。二是想体现这门语言的制定者是ECMA,不是Netscape,这样有利于保证这门语言的开放性和中立性。github

所以,ECMAScript和JavaScript的关系是,前者是后者的模块化,后者是前者的一种实现(另外的ECMAScript方言还有Jscript和ActionScript)。平常场合,这两个词是能够互换的。npm

 

 

部署进度

 

        Node 是 JavaScript 的服务器运行环境(runtime)。它对 ES6 的支持度更高。除了那些默认打开的功能,还有一些语法功能已经实现了,可是默认没有打开。使用下面的命令,能够查看 Node 已经实现的 ES6 特性。浏览器

 

window:服务器

在终端(控制端):babel

$node --v8-options | findstr harmony

 

 

     阮一峰写了一个ES-Checker模块,用来检查各类运行环境对ES6的支持状况。访问ruanyf.github.io/es-checker,能够看到您的浏览器支持ES6的程度。运行下面的命令,能够查看你正在使用的Node环境对ES6的支持程度。
模块化

$npm install -g es-checker函数

$es-checkercode

Babel转码器

Babel 是一个普遍使用的 ES6 转码器,能够将 ES6 代码转为 ES5 代码,从而在现有环境执行。这意味着,你能够用 ES6 的方式编写程序,又不用担忧现有环境是否支持。下面是一个例子。

 转码前:                                                                                                             转码后:

 

上面的原始代码用了箭头函数,Babel 将其转为普通函数,就能在不支持箭头函数的 JavaScript 环境执行了

下面的命令在项目目录中,安装 Babel。

相关文章
相关标签/搜索