JavaScript无疑是当今最火爆的编程语言之一,它的崛起要归功于AJAX、Node.js的出现以及时下各种MVC框架的流行。但作为一门在十天之内创建出来的语言,JS本身存在着一些不完善之处、以及容易令人疑惑的地方,例如不支持强类型以及new关键字的用法。尤其与当前主流的面向对象语言以及动态语言相比,其不足之处显得尤为突出。
为了克服JS语言中的缺陷,让更多的人能够编写出优秀的代码,市面上出现了大量能够将其它编程语言转译为JS的工具。其中较知名的有CoffeeScript、Dart、GWT、Script#,以及本文的主角TypeScript与Haxe。
TypeScript是这一领域中的新贵,是最为流行的Web开发前端脚本语言JavaScript的超集,由微软于2012年发布。近期发布到1.6版,加入了大量ES6的特性。TypeScript被设计为JS的一个超集,因此现有的JS都是合法的TypeScript代码。这门语言也得到了Angular团队以及Telerik的支持。
作为这一领域中的老前辈,Haxe从2006年起就提供了转译为JS的功能。与TypeScript类似,Haxe也提供了一套类似于JS的语法、静态类型系统以及模块。除了JS之外,Haxe还能够提供编译为Flash、PHP、C++等语言的功能。
JavaScript驱动着亿万网页中的动态交互功能,结合HTML和CSS,控制着页面的布局和样式。TypeScript的出现是为了弥补JavaScript的缺陷:缺乏一种类型安全的,静态的,编译时的保障,便于用于大型项目开发。作为JavaScript的超集,所有的JavaScript代码都是有效的TypeScript代码,使得能够轻松地基于现有的JavaScript项目集成开发。
TypeScript 1.6中最主要的新特性就是增加了对 React/JSX的支持。
TypeScript 1.6可通过Visual Studio 2015(点此下载),Visual Studio 2013(点此下载)下载,也可在npm下载,或作为源码下载。