今天开始学习ES6,也就是ECMAScript 6.0.

简介

首先得先来了解一下什么是ECMAScript,我们平常可能听JavaScript更多一点,那他俩什么关系呢?

其实,ECMA是一个国际标准化组织,JavaScript的创造者Netscape公司,决定让这种语言成为国际标准,因此将JavaScript提交给了ECMA公司,ECMA在1997年发布了第一版的便准文件ECMA-262,并称这种语言为ECMAScript。

之所以不叫JavaScript,不仅是因为JavaScript这个词本身已经被注册为商标,并只能由Netscape公司使用,而且因为想体现这门语言的制定者是ECMA,不是Netscape,有利于保证这门语言的开放性和中立性。

因此,ECMAScript和JavaScript的关系是,前者是后者的规格,后者是前者的一种体现。

另外有的同学还听说过 ECMAScript 2015这种说法,那么ES6和ES2015有什么关系呢?

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

安装Node.js

Node.js是JavaScript语言的服务器运行环境,对ES6的支持度比浏览器更高,通过Node,可以体验更多ES6特性。

我们这里省略了Node.js的安装步骤,直接开始使用。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ node --v8-options | grep harmony

--harmony_typeof
--harmony_scoping
--harmony_modules
--harmony_symbols
--harmony_proxies
--harmony_collections
--harmony_observation
--harmony_generators
--harmony_iteration
--harmony_numeric_literals
--harmony_strings
--harmony_arrays
--harmony_maths
--harmony

Babel转码器

Babel是一个广泛使用的ES6解码器,可以将ES6转为ES5代码,从而在现有环境运行。

配置文件 .babelrc

Babel的配置文件是.babelrc,存放在项目的根目录下。使用Babel的第一步,就是配置这个文件。