鉴于JavaScript这种脚本语言很难应用于大规模Web应用的开发,微软公司在2012年推出了新的开源编程语言—— TypeScript 。作为 Object Pascal 和 C# 之父Anders Hejisberg的又一作品,TypeScript是JavaScript的超集,但完全兼容JavaScript。相比于JavaScript,TypeScript增加了可选类型、类和模块,扩展了原有的语法,使得代码组织和复用变得更加有序,方便进行大型Web应用的开发。
2014年4月,TypeScript 1.0版本才正式发布。之后,微软公司不断更新该语言,陆续推出了1.3、1.4和1.5的测试版本。近日,TypeScript1.5版本 正式发布 。目前,最新版的TypeScript已经集成在最新发行的 Visual Studio 2015 中。用户也可以单独下载适用于 Visual Studio 2013 或者 npm 的版本,以及直接从 GitHub 下载源代码。接下来,本文就TypeScript 1.5版本的新特性进行简要介绍。
首先,在ES6(ECMAScript 6,即ECMAScript 2015)的支持方面。TypeScript 1.5版本增加了对ES6中Modules、Destructuring、Spread、for..of、Symbols、Computed Properties、Let/Const、和Tagged String Templates等新特性的支持。这些新特性使得TypeScript向成为ES6的超集并为ES6的所有主要特性提供类型检查的目标迈进了一大步。
其次,在模块(Module)方面,TypeScript 1.5也进行了很大改动。TypeScript 1.5支持ES6的新模块语法——ES6模块可以导入模块并用export来声明公共API的每一部分,甚至可以只导入公共API所需要使用的那部分。而且,开发人员还可以使用默认export声明进行模块内容的精确控制。此外,TypeScript 1.5对模块进行了简化,并换用更加简洁的名称——内部模块改称为“namespace”,外部模块才为“module”。为了支持SystemJS和UMD等更多的JavaScript实践,TypeScript 1.5还增加了两个新的模块输出格式。
再次,在创建更轻量、便携的项目方面。鉴于VS Code、Sublime、Atom和其他编辑器已经开始支持 tsconfig.json 文件,TypeScript 1.5的编译器也开始支持该类型文件,使得用户可以指定工程中的文件和编译选项。该方法创建的项目即可在命令行也可在编辑器中进行开发,更加轻量化。
最后,TypeScript 1.5还添加了对ES7 Decorator特性的支持。由于目前ES7仍然处于开发阶段,其Decorator特性也被视为实验性质。但是,用户目前已经可以进行体验,感受其强大之处。关注更多细节的读者可以参考其 路线图 以及 新特性 页面。
感谢郭蕾对本文的审校。
给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群 )。