简单记录下JavaScript的发展,对于日后的学习提供指引。
ES5
函数式编程
ES6/ES2015
ECMAScript 团队现在采纳了一种新的命名方式,以年份作为标识,区分语言的版本。不会有ES6了,现在我们叫它ES2015。而下一个版本则被指向 ES2016。
ES2015 是 ES5 的改进。增加了大量的功能特性。具体功能特性后章节介绍!
ES2015中可继续有效的使用 ES5 (包括函数)。
Node.js 是针对V8引擎的现代版本而构建的。根据其文档来看,Node 已经对 ES2015的许多东西进行了实现。
我们如何才可以在还不支持ES2015的浏览器中运行ES2015? 我们可以使用像 Babel 这样的工具,用 ES2015 编写代码,然后将代码转换成 ES5。Babel
使得编写 ES2015 变得简单 (未来的ES2016以及更高版本也不在话下),然后仍将代码向下编译成老版本的JavaScript。
TypeScript
TypeScript 是 JavaScript 的超集。
TypeScript中的Type这个词表明我们会拥有类型。这些类型是可选的,因此我们并不是非得用上它们不可。
类型知识只是TypeScript一块而已。也许更好的名称就是简单的 ES+。
TypeScript 的价值并不在于编写更少的代码,其价值在于编写更加安全的代码。
TypeScript 在 ES2015 之外还提供了什么呢? 我认为增加了最大价值的方面 :
- 类型
- 接口
- 未来的 ES2016+ 特性 (比如注解/装饰器以及异步/等待)
TypeScript 是JavaScript 类型化子集,它会被编译成原生的JavaScript。