AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

TypeScript 1.5 进一步提升了面向 ES6 的转译特性

  • 2015-08-05
  • 本文字数:1133 字

    阅读完需:约 4 分钟

在 TypeScript 的上一个版本发布 7 个月之后,微软终于发布了TypeScript 1.5 ,新版本朝着完全支持ES6 的最终目标又迈进了一大步。

TypeScript 1.4 于 2015 年 1 月发布时,它的 Kangax ES6 兼容性(特性实现比例)仅仅只有 8%。而 TypeScript 1.5 中加入了众多的新特性,使得其兼容性达到了 53%(截至 2015 年 7 月 26 日)。

不出所料,1.5 版本加入了对 ES6 风格的模块语法的支持。编译器已能够将模块以 SystemJS UMD 的语法进行输出。除此之外,开发团队还借此机会将之前版本中被命名为“内部模块”的特性更名为“命名空间”,以减少使用者的困惑。

1.5 版本还加入了对修饰符的支持,这一特性之所以能够出现在这门语言中,是开发团队与 Angular、Ember 以及 Aurelia 团队通力合作的成果。修饰符能够提供运行 Angular 2.0 应用所必需的特性,这几个团队都希望修饰符能够成为ES7 的一部分,但目前为止,它仍然被认为是一种实验性质的特性。为了在Angular 2.0 应用中启用这一特性,开发者需要打开—experimentalDecorators 这个编译标志。

Steve Ognibene 是 Pluralsight 网站上一门有关 TypeScript 的课程的作者,他对于 1.5 版本面向 ES6 的转译功能感到十分兴奋:

TypeScript 如今已成为一个完美的 ES6 至 ES5 的转译器,使用 TypeScript 1.5 的团队不仅能够享受到那些一贯的好处,例如开发时错误提示、恰当的智能提示与文档、以及优秀的重构与代码导航功能,还能够编写使用 ES6 的特性,而实际上在当前的 ES5 环境下运行的代码。对于 ES6 风格的各种语法,TypeScript 1.5 都实现了良好的 ES5 转译,因此我能够在针对生产环境的代码中使用我最喜爱的特性,包括 let、const、解构(destructuring)、展开(spread)、剩余参数(rest)、字符串模板,以及 ES6 风格的模块语法。

有些开发者可能会对 async/await 语法的缺失感到失望。这一特性在 TypeScript 路线图中目前被列为“2.0”版本中的特性之一,但在之前的修订中,它曾计划在较早的时间发布。在某篇博客的留言中,TypeScript 的程序经理 Jonathan Turner 特意对这一特性及其发布时间进行了回应。

我们正在对编译器进行一些重构工作,以实现 async/await 对 ES5 的支持。我们希望让编译器代码与生成的代码尽量保持整洁,因此实现这一点需要一定时间。出于以上原因,我们估计这一特性也不会出现在 1.6 版本中,因为我们希望尽快发布新的版本。

这条回复同时也暗示着下一个版本的 TypeScript 用不着再等上 7 个月那么久了,1.6 版本中计划加入的特性包括:

  • 对 JSX 的支持
  • 抽象类与方法
  • ES6 生成器

开发者们可以在最新发布的 Visual Studio 2015 中直接使用 TypeScript 1.5,也可以下载对应 Visual Studio 2013 与 npm 的版本。

查看英文原文: TypeScript 1.5 Boosts ES6 Transpilation Features

2015-08-05 06:571938
用户头像

发布了 428 篇内容, 共 185.5 次阅读, 收获喜欢 39 次。

关注

评论

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

华科附属同济医院携手和鲸科技,打造科研管理服务一体化平台,加快研究型医院建设

ModelWhale

人工智能 大数据 互联网

云起无垠入选中国信息通信研究院2024年度首期“磐安”优秀案例

云起无垠

微店API接口深度探索:如何高效获取商品详情及简短代码示例

代码忍者

微店商品详情API接口 微店商品列表API

EIP和NAT结合如何实现统一公网出口IP

天翼云开发者社区

NAT网关 EIP

【YashanDB知识库】收集统计信息时报错YAS-00507 date/timestamp value overflow

YashanDB

数据库 yashandb

轻松打造高效日志系统

俞凡

架构 最佳实践

NFTScan | 12.23~12.29 NFT 市场热点汇总

NFT Research

NFT NFT\ NFTScan

央视聚焦!揭秘千行百业背后的“算力引擎”!

极客天地

【YashanDB知识库】druid连接池查询空间数据报错read time out

YashanDB

数据库 yashandb

AppCrawler 自动遍历测试实践(三):动手实操与常见问题汇总

测试人

软件测试

制造业数字化转型要注重哪些方面?

万界星空科技

数字化转型 制造业 mes 万界星空科技mes

块级迁移和文件级迁移的区别

天翼云开发者社区

块级迁移 文件级迁移

给 Postgres 写一个向量插件 - 介绍

极限实验室

Postgrest vector database

通过精益管理扭转亏损后,这家企业开始向管理提升要效益

AMT企源

精益管理 钢铁企业

【YashanDB知识库】如何使用jdbc向YashanDB批量插入gis数据

YashanDB

数据库 yashandb

【YashanDB知识库】如何在备机节点上做备份和恢复

YashanDB

数据库 yashandb

基于ArgoCD和Testkube打造GitOps驱动的Kubernetes测试环境

俞凡

gitops

Golang插件系统实现

俞凡

golang

C++ vs Rust vs Go 性能比较

俞凡

c++ golang rust

性能媲美裸金属,边缘场景高性能虚拟机技术揭秘

火山引擎边缘云

边缘计算 虚拟机 火山引擎 裸金属

企业组网的作用及SD-WAN的优势

Ogcloud

SD-WAN 组网 企业组网 SD-WAN组网 SDWAN

智元开源百万真机数据集!具身智能领域的ImageNet时刻已到来!

极客天地

腾讯 StereoCrafter:2D 视频转 3D 视频效果;支付宝推出新 AI 视觉搜索产品「探一下」丨 RTE 开发者日报

声网

【YashanDB知识库】hive初始化崖山报错YAS-04209

YashanDB

数据库 yashandb

TypeScript 1.5进一步提升了面向ES6 的转译特性_语言 & 开发_David Iffland_InfoQ精选文章