ES6、TYPESCRIPT、ATSCRIPT和BABEL是什么玩意儿

ES6TYPESCRIPT、ATSCRIPT和BABEL是什么玩意儿?

前言

这个题目翻译自原版标题WTF IS ES6/TYPESCRIPT/ATSCRIPT/BABEL?,挺好玩的题目。

由于官方文档的JS版本对比TS版本少非常多,我也没有能力确保把TS搬到JS并保证他的正确性,所以我暂时选择等待官方的更新。这期间我会找一些Angular2的非官方文档来继续学习。 
原文地址

正文

对于开发者来说,最难的事情之一就是如何写现代化JavaScript。现在有ES5、ES6TypeScript、AtScript、Dart、Babel以及之后的ES7,这个名单还在增加。

JavaScript是一个庞大的标准驱动的语言。这意味着有一个委员会来决定JavaScript是什么样的,确定它的最低限的定义,然后浏览器厂商来实现。现在(但不会太久了),ES5是JS被最广泛支持的版本。

然而,委员会启动的设计是出了名的慢,所以每一个从开发者到浏览器厂商都急于使用和实现新的特性,这比委员会的工作要快。

在浏览器看来,JS有点像(assembly of the web(网页组件)),意味着它可以运行更高等级语言编写的代码,然后将它“编译”为浏览器可理解的JS。

CoffeeScript就恰恰是这样的,第一个非常成功的更高级的JS语言。一个开发者可以编写CoffeeScript,然后编译工具可以将它转变为第一层的JS语言。

这就是我们现在看到的ES6和其他(语言)的关系。浏览器还没有natively(直接地)实现许多ES6+的特性,并且开开发者们想对JS进行改革。这意味着他们已经开始开发他们的更高等级的JS语言,例如AtScript,TypeScript,和想Babel这样的工具实现未来JavaScript的特性并且将它编译为ES5。

Dart是Google几年前创建的实验性语言。我们不建议使用Dart作为取代JS的新特性(原文的话)。

ArScript是Google创建的使用新特性扩展JS和TypeScript的实验性语言,例如annotation和type introspection。它现在已经被抛弃了。

TypeScript是Microsoft的JS扩展,提供了强力的类型检查能力和面向对象特性。Angular2 和 Ionic2都使用TypeScript

ES6是JavaScript的下一个版本,它最近才被提出并提过了很多编写JS的方式。ES7是JS的未来版本,有些已经被更高记得JavaScript语言实现了。

总结 
如果你想要开发ES6或ES7,你可以用Babel,是“下一代JavaScript语言代码的编译器”。如果你想用Ionic和Angular,我们建议你使用TypeScript,它提供了和Babel类似的功能,还有type checking(类型检查)。


转载于:https://my.oschina.net/u/2485194/blog/663923

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值