鉴于 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 读者交流群)。
评论