2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

TypeScript 2.5 发布,增加语言级重构

  • 2017-09-10
  • 本文字数:852 字

    阅读完需:约 3 分钟

在 TypeScript 2.5 版本中,Microsoft 专注于提高开发人员的生产力,其范围已经超出了代码编辑器所提供的常见功能。

习惯于类型语言(如 C#)的开发人员喜欢使用那些可以轻松执行常见重构的工具。现在 TypeScript 可以利用其语言代码知识来执行 Extract FunctionExtract Method 的重构。但 TypeScript 是一种语言服务而非编辑器,因此将此功能添加到语言服务中意味着所有的编辑器都可以通过挂接服务来实现重构。TypeScript 项目经理 Daniel Rosenwasser 表示,该团队注重提高开发人员的体验,而不仅仅是语言:

TypeScript 是基于编辑经验开发的一种语言,因此我们团队在编辑器 / 类型检查器以及支持编辑器(如 VS Code)的语言服务方面投入了精力。它不仅仅是 VS 和 VS Code,这些变更对任何使用我们语言服务的编辑器都有效,因此,我认为这些编辑功能对 TypeScript 用户来说很有价值。

这些重构将在 VS Code 和 Visual Studio 中得到应用。

微软还通过捕获 JSDoc 类型声明和不正确的类型引用的意外用法,来提升工具集的“快速修复”。在 TypeScript 2.1 中首先提供了快速修复语言服务的 API ,包括:拼写错误、丢失 import 、丢失 this 以及未使用的声明。更多方面的修复功能已经完成规划

这次发布的版本并不侧重于语言特性,但其中唯一值得注意的就是可选的 catch 变量。当开发人员需要捕获错误时这个特性就非常有用,开发者不必关心这个错误的实际内容。这个特性实际上是 ECMAScript 提案的一部分。以下示例未包括捕获错误的声明,现在这么写是成立的:

复制代码
try {
const result = someMethodThatWillThrowAnException();
}
catch {
contents = createDefaultContents();
}
{1}

和以前一样,最新版本的 TypeScript 可以通过 npm install -g typescriptor 或通过 NuGet 来安装。

查看英文原文: TypeScript 2.5 Released, Adds Language Level Refactoring


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017-09-10 19:003126
用户头像

发布了 376 篇内容, 共 208.9 次阅读, 收获喜欢 949 次。

关注

评论

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

亚马逊云科技AI创新应用下的托管在AWS上的数据可视化工具—— Amazon QuickSight

淼.

AWS EC2、阿里云ECS、腾讯云CVM初步对比

穿过生命散发芬芳

腾讯云 阿里云 AWS

Python连接es笔记二之查询方式汇总

Hunter熊

Python elasticsearch Elasticsearch-dsl

连接亚马逊云EC2的几种方式

孤虹

你真的了解“有钱人”吗?

少油少糖八分饱

笔记 阅读 搞钱 致富 有钱人

亚马逊Lightsail:云服务新篇章,轻松开启您的数字未来

熬夜磕代码、

亚马逊云 AWS Lightsail

「AI技术图像编辑软件」Luminar Neo for Mac

彩云

Luminar Neo AI技术图像编辑软件

2023-11-18:用go语言,如果一个正方形矩阵上下对称并且左右对称,对称的意思是互为镜像, 那么称这个正方形矩阵叫做神奇矩阵。 比如 : 1 5 5 1 6 3 3 6 6 3 3 6 1 5

福大大架构师每日一题

福大大架构师每日一题

一款带数字传输信号的OVP芯片

芯动大师

「Macos排版神器」Affinity Publisher for Mac中文直装版

彩云

Affinity Publisher

新网的机房写的是BGP链路,什么是BGP链路啊?

Geek_f19a80

服务器

亚马逊Amazon OpenSearch Serverless"利刃在手,‘向量’八方"

淼.

亚马逊云EC2部署QNAP

孤虹

Unite for mac「将网站转换为应用程序」

加油,小妞!

Unite for Mac

Jenkins 打包shell出现gradle命令不存在,jvm内存溢出

javaNice

Java jenkins

Redis缓存雪崩、击穿、穿透解释及解决方法,缓存预热,布隆过滤器 ,互斥锁

javaNice

Java redis

WordPress 基于亚马逊云的部署实践(一)- 架构设计

wangkx

AWS 亚马逊云 Amazon EC2 云服务器

智慧工地管理平台源码

源码星辰

工地 智慧工地

使用 Filebeat+Easysearch+Console 打造日志管理平台

极限实验室

Filebeat console 日志管理 easysearch

openAi基于java jtokkit实现分词

智慧源点

jtokkit

「Macos好用的图片处理工具」Affinity Photo 最新中文版

加油,小妞!

图像处理 Affinity Photo

Coherence X for Mac「网站转换为Mac应用」

彩云

Coherence X

Apeaksoft Data Recovery for Mac中文版 数据恢复工具

彩云

数据恢复 Apeaksoft Data Recovery

TypeScript 2.5 发布,增加语言级重构_JavaScript_David Iffland_InfoQ精选文章