BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

TypeScript 1.5正式发布:深度支持ECMAScript

| 作者 张天雷 关注 4 他的粉丝 发布于 2015年7月27日. 估计阅读时间: 4 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

鉴于JavaScript这种脚本语言很难应用于大规模Web应用的开发,微软公司在2012年推出了新的开源编程语言——TypeScript。作为Object PascalC#之父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读者交流群InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

其中一些关键字词上含义偏差较远 by 张 思宇

例如1:
原文:ES6模块可以导入模块并用export来声明公共API的每一部分,甚至可以只导入公共API所需要使用的那部分。
建议修订为:ES6模块可以用import导入模块并用export导出每一个公共API,甚至可以只导入公共API所需要使用的那部分。

例如2:
原文:为了支持SystemJS和UMD等更多的JavaScript实践,TypeScript 1.5还增加了两个新的模块输出格式。
建议修订为:为了支持更多的JavaScript实践,TypeScript 1.5新增加了两个新的模块输出格式:SystemJS和UMD。


修订后的文字见: my.oschina.net/1pei/blog/493012

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT