写点什么

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

发布了 375 篇内容, 共 197.5 次阅读, 收获喜欢 947 次。

关注

评论

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

如何实现多存储文件传输,镭速提供多存储文件传输解决方案

镭速

为什么要使用CDN?CDN有什么优势?

海拥(haiyong.site)

三周年连更

软件测试/测试开发丨接口测试通用 API 封装实战

测试人

软件测试 自动化测试 接口测试 测试开发

数据可视化、数据分析常用的图表都有哪些?(二)

百度开发者中心

数据可视化 #百度智能云# 数据分析可视化

selenium源码通读·8 |webdriver/common/keys.py-Keys类分析

Python 自动化测试 测试框架 源码剖析 selenium

数据生产压力突增23倍,平台“可观测性”如何帮这家制造集团排忧解难? | 奇点云技术分享

奇点云

数据中台 可观测性 制造业 奇点云

3DCAT实时云渲染助力广府庙会元宇宙焕新亮相,开启线上奇趣之旅!

3DCAT实时渲染

元宇宙 实时渲染云 3D实时云渲染

selenium源码通读·7 |webdriver/common/by.py-By类分析

测试 自动化测试 测试框架 源码剖析 selenium

玩转AIGC,5分钟 Serverless 部署 Stable Diffustion 服务

Serverless Devs

Serverless AIGC Stable Diffustion

OMG!这个Ins快拍保存到相册的办法绝了!还在犹豫什么,都给我冲!

frank

Instagram

精选AI工具合集,效率神器!不止ChatGPT

Finovy Cloud

人工智能 AI

TitanIDE 新版本来袭,全新“效能看板”上线

行云创新

ide

数据可视化、数据分析常用的表格组件都有哪些?(三)

百度开发者中心

数据可视化 百度智能云 数据分析工具

深入了解 WebAssembly —— 一种新的 Web 可执行文件格式

NGINX开源社区

nginx webassembly

火爆的低代码开发具有哪些技术特点?

力软低代码开发平台

GPU 加速药物研发与基因组学分析

百度开发者中心

GPU服务器

软件测试/测试开发丨接口测试数据的数据驱动

测试人

软件测试 自动化测试 接口测试 数据驱动 测试开发

CloudQuery 社区版回归直播即将开启

BinTools图尔兹

直播 社区版

浪潮海岳低代码平台inBuilder开源社区版正式发布

inBuilder低代码平台

开源 低代码平台

测试用例该如何编写?

测吧(北京)科技有限公司

测试

数据可视化、数据分析常用的图表都有哪些?(一)

百度开发者中心

数据可视化 #百度智能云# 数据分析可视化

软件测试/测试开发丨接口测试配置的数据驱动

测试人

软件测试 自动化测试 测试开发

OpenHarmony开发者大会召开 携手共建使能千行百业的数字底座

极客天地

软件测试/测试开发丨接口测试APIObject 模式、原则与应用

测试人

软件测试 自动化测试 接口测试 测试开发

建设司库管理体系,数智化转型打破数据壁垒

智达方通

全球司库 司库体系建设 司库管理体系 智达方通

国家工信安全中心权威认证!

百度开发者中心

工业互联网 百度飞桨 文心一言

CSA GCR大会正式发布全球首个云渗透测试认证专家课程,腾讯安全获评“特别贡献单位”

腾讯安全云鼎实验室

云安全

押题率90%!2023Java岗面试99题(含答案):JVM+Spring+MySQL+线程池+锁

程序知音

Java 后端 java面试 Java进阶 Java面试题

OpenHarmony 3.2 Release版本到来,全面提升复杂带屏设备体验

极客天地

flutter系列之:如何自定义动画路由

程序那些事

flutter 架构 大前端 程序那些事

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