写点什么

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:572268
用户头像

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

关注

评论

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

Kafka基础简介

架构精进之路

kafka 七日更 28天写作 2月春节不断更

Idea工具的各种查找快捷键

小马哥

IntelliJ IDEA 七日更 2月春节不断更

即日起 Jira、Confluence 正式停售本地版,中国客户将无法购买

万事ONES

项目管理 开发者 研发管理 团队协作 CTO

产品训练营第三周作业

朱航

最高法规范区块链证据,司法链将走向全国统一

CECBC

区块链

EXCEL数据如何去重? Python:这事我比你熟

智分析

Python

Linux-Lab 入门:使用开发板

贾献华

嵌入式 Linux Kenel 开发板 arm boot

【mybatis】- MyBatis基础篇

双木之林

anyRTC2020年 年终总结

anyRTC开发者

音视频 WebRTC RTC sdk

新思科技:以DevOps的速度打造安全的软件

InfoQ_434670063458

DevSecOps 新思科技

产品训练营作业三

胡小湖

《我想进大厂》之Zookeeper夺命连环9问

艾小仙

zookeeper

区块链与安全随想

CECBC

区块链

你的网站上还在用图片验证码来刁难用户么?一招教你彻底去除图片验证码!

香芋味的猫丶

短信验证码 短信防轰炸 短信防火墙 图片验证码 风控防火墙

即构自研海量有序数据网络MSDN,构建全球可靠的多云通讯链路

ZEGO即构

后疫情时代,企业如何实现数字化增长?

字节跳动 Kubernetes 容器 云原生

第三周产品经理训练营总结

产品经理训练营

关于自己的一个梦(飞翔)

Yuchen

玩转IDEA项目结构Project Structure,打Jar包、模块/依赖管理全搞定

YourBatman

Module IntelliJ IDEA Project Structure

程序员成长第一篇:机会与趋势

石云升

28天写作 2月春节不断更 机会与趋势

HTTPS是怎么保证数据安全传输的?

面试 HTTP

ICE暴雪正悄悄崛起

DT极客

SpringCloud 从入门到精通15---Sentinel搭建和服务监控

Felix

华为18A架构师共享:Netty+Redis+zookeeper+高并发技术栈

996小迁

redis zookeeper 架构 Netty 高并发

2021年云计算面临的5大网络安全威胁

云计算 云安全

使用pgBackRest并行归档解决wal堆积问题

PostgreSQLChina

数据库 postgresql 开源 开源社区

利用 Python 分析了某化妆品企业的销售情况,我得出的结论是?

JackTian

Python 数据分析 数据可视化 化妆品 2月春节不断更

MySQL安装教程&问题解决

Mars

MySQL 运维

数据库表数据量大读写缓慢如何优化(4)【分库分表】

我爱娃哈哈😍

数据库 架构

极客时间产品训练营第三周作业

云随心

产品 作业 产品训练营

托管节点池助力用户构建稳定自愈的 Kubernetes 集群

阿里巴巴云原生

Docker 容器 运维 云原生 k8s

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