写点什么

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

2015 年 7 月 26 日

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

2015 年 7 月 26 日 03:411860
用户头像

发布了 268 篇内容, 共 102.6 次阅读, 收获喜欢 18 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第 1 期第 五 周作业

郑凯元

极客大学架构师训练营

不了解Raft算法敢说研究过分布式?

心平气和

分布式 raft

只争朝夕乘势上,不负韶华开新局——区块链上升为国家战略今日迎来一周年

CECBC区块链专委会

区块链 数字经济

数字人民币将如何改变金融生态?

CECBC区块链专委会

数字人民币

极客时间架构师培训 1 期 - 第 5 周作业

Kaven

架构师第一周作业

丁乐洪

架构师训练营第五周学习总结

Gosling

极客大学架构师训练营

手把手教你理解决策树:从概念到应用

计算机与AI

Python 学习 决策树

年薪50万开发者相亲失败:程序员,别输在不会说话上

田维常

程序员 好好说话 不会说话

牛逼的程序员,都长什么样?

田维常

程序员 牛逼

架构师训练营第五周作业

四夕晖

第一周学习总结

CraspLion

第一周作业

阿呆

第四周作业

橘子皮嚼着不脆

第一周作业

CraspLion

Raft算法之日志篇

心平气和

raft

架构师训练营第 1 期 - 第五周总结

Todd-Lee

极客大学架构师训练营

【建议收藏】18个适合程序员的在线学习网站,每个我都帮您试过了

田维常

学习 程序员 成长 网站

云南区块链布局

CECBC区块链专委会

区块链 大数据

架构师训练营第 1 期第 5 周学习总结

du tiezheng

极客大学架构师训练营

架构师训练营第 1 期第 五 周学习总结

郑凯元

极客大学架构师训练营

架构师训练营第五周课后作业

Gosling

极客大学架构师训练营

第五周作业

极客大学架构师训练营

面试官角度,聊聊写简历这事

田维常

程序员 面试

Spring Boot 过滤器、监听器、拦截器的使用

田维常

程序员 过滤器 拦截器

Raft算法之选举篇

心平气和

raft 选举

分布式事务实现及比较

luojiahu

分布式事务

Raft算法之快照篇

心平气和

raft 快照

第5周 技术选型(一)总结

bearlu

朋友被“卖”了两次:程序员,真的别去外包公司!

田维常

程序员 外包 外包公司

程序员是不是青春饭?年纪大了何去何从

田维常

程序员 大龄程序员 青春饭

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