TypeScript 4.2 已经发布, 4.3 目前在 beta 测试中。

TypeScript 是适用于任何规模应用的 JavaScript。

TypeScript 可以在您运行代码之前找到错误并提供修复,从而改善您的开发体验。

任何浏览器,任何操作系统,任何运行 JavaScript 的地方,完全开源。

const user = { firstName: "Angela", lastName: "Davis", role: "Professor" } console.log(user.name) Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.2339Property 'name' does not exist on type '{ firstName: string; lastName: string; role: string; }'.Try

什么是 TypeScript?

JavaScript,以及更多。

TypeScript 是一个开源的编程语言,通过在 JavaScript(世界上最常用的语言之一) 的基础上添加静态类型定义构建而成。

类型提供了一种描述对象形状的方法。可以帮助提供更好的文档,还可以让 TypeScript 验证你的代码可以正常工作。

在 TypeScript 中,不是每个地方都需要标注类型,因为类型推断允许您无需编写额外的代码即可获得大量功能。

值得信任的结果

所有有效的 JavaScript 代码同时也是有效的 TypeScript 代码。你也许会有类型检查的错误,但是这不会阻止你运行生成的 JavaScript。尽管您可以选择更严格的行为,但是这意味着一切依然在您的控制中。

TypeScript 代码通过 TypeScript 编译器或 Babel 转译为 JavaScript 代码,生成后的代码也是干净,简洁,运行在任何可以运行 JavaScript 的地方,无论是在浏览器,Node.JS 还是在您的应用中。

渐进式迁移

使用 TypeScript 并不是一个二元选择,您可以首先使用 JSDoc 来注释现有的 JavaScript,然后只让 TypeScript 检查一小部分文件,从而让您的代码可以在后续迭代中逐渐完成迁移。

TypeScript 的类型推导意味着只有您希望获得更佳的安全性时,才需要在您的代码中写更多的类型注释。

每个人的类型

这个世界上大多数的 JavaScript 都是没有类型的,所以类型推断只能提供很有限的支持。为了处理这种情况,TypeScript 团队帮助维护了 Definitely Typed - 一个为已经存在的 JavaScript 提供类型定义和内联文档的社区项目。

这个项目使 JavaScript 库的类型定义可以由社区来维护,而不需要为他们的维护者带来额外的负担。

始终如一的优质工具

通过 TypeScript 中对编辑器集成的处理,你可以在很多不同的编辑器中获得一致的使用体验。

这允许你可以在不同编辑器之间快速切换,例如 Visual Studio, Visual Studio Code, Nova, Atom, Sublime Text, Emacs, Vim, WebStorm and Eclipse 等。

TypeScript 的编辑器集成中支持 JavaScript,所以您可能已经在不知不觉中使用到了 TypeScript。

与标准同步发展

TypeScript 团队为指导 JavaScript 语言发展的 TC39 委员会作出了贡献。

当新的功能到达 stage 3 阶段后,他们将被包含进 TypeScript。

例如 TypeScript 团队推进了“可选链”,“空合并操作符”,throw 表达式和 regex 匹配索引之类的提案。

迁移故事

First, we were surprised by the number of small bugs we found when converting our code.

Second, we underestimated how powerful the editor integration is.

TypeScript was such a boon to our stability and sanity that we started using it for all new code within days of starting the conversion

Felix Rieseberg at Slack covered the transition of their desktop app from JavaScript to TypeScript in their blog

Read

开始使用

安装 TypeScript

你可以使用 npm 安装 TypeScript

之后执行 tsc 来运行 TypeScript 编译器

npx tsc

季度发布

我们的下一个版本发布是 4.3, 计划于 5月25日

4.2 发布

4.3 Beta 测试
3月30日

4.3 预发布
5月11日