关于《Typescript手册》

57 阅读4分钟

免责声明: 本文为翻译自 Typescript 官方手册内容,非原创。版权归原作者所有。

原文来源: The TypeScript Handbook

翻译者注: 本人在翻译过程中已尽最大努力确保内容的准确性和完整性,但翻译工作难免有疏漏。如读者在阅读中发现任何问题,欢迎提出建议或直接查阅原文以获取最准确的信息。

关于本手册

在引入编程社区 20 多年后,JavaScript 现已成为最广泛使用的跨平台语言之一。起初,它只是一个用于给网页添加简单交互性的小型脚本语言,但如今已发展成为前端和后端应用程序的首选语言。尽管 JavaScript 编写的程序规模、范围和复杂性呈指数级增长,但 JavaScript 语言表达代码不同部分之间关系的能力并未相应提升。再加上 JavaScript 运行时语义相对特殊,这种语言与程序复杂性之间的不匹配使得大规模开发 JavaScript 变得困难。

程序员常犯的错误中最常见类型是类型错误:在期望是某种类型的值的地方使用了另一种类型的值。这可能是由于简单拼写错误、未理解库 API 接口、对运行时行为做出了错误假设或其他原因导致。TypeScript 旨在成为 JavaScript 程序静态类型检查器 - 换句话说,这是一个在代码运行之前运行(静态)并确保程序类型正确的工具(类型检查)。

如果你没有 JavaScript 背景,并打算将 TypeScript 作为第一门语言学习,请先阅读 Microsoft Learn JavaScript 教程Mozilla Web Docs 上有关 JavaScript 文档。如果你有其他编程语言经验,则通过阅读本手册应该能够很快掌握 JavaScript 语法。

这本手册的结构如何?

手册分为两个部分:

手册 (The Handbook)

《TypeScript手册》旨在为日常程序员提供全面的文档,解释 TypeScript。你可以通过从左侧导航从上到下阅读手册。

你应该期待每一章或每一页都能为你提供对给定概念的深入理解。《TypeScript手册》并不是完整的语言规范,但它旨在成为一个全面指导所有语言特性和行为的指南。

完成阅读后,读者应该能够:

  • 阅读并理解常用的 TypeScript 语法和模式
  • 解释重要编译器选项的影响
  • 在大多数情况下正确预测类型系统的行为

为了清晰和简洁,《手册》的主要内容将不会探讨每一个边缘案例或被覆盖特性的细枝末节。你可以在参考文章中找到更多关于特定概念的详细信息。

参考文件 (Reference Files)

位于导航手册下方的参考(Reference)部分是为了提供对 TypeScript 特定部分工作方式的更深入理解而构建的。你可以从头到尾阅读它,但每个部分都旨在提供单一概念的更深层次解释 - 这意味着没有连续性要求。

非目标(Non-Goals)

本手册旨在成为一份简明扼要的文档,可以在几个小时内轻松阅读。为了保持篇幅简短,某些主题将不会涉及。

具体而言,本手册没有完全介绍 JavaScript 核心基础知识,如函数、类和闭包。在适当的地方,我们将提供相关阅读链接,以便深入了解这些概念。

本手册也无意取代语言规范。在某些情况下,我们会跳过边缘案例或行为的正式描述,并选择更高层次、更易理解的解释。相反地,在单独的参考页面中有更精确、更正式地描述 TypeScript 行为的内容。这些参考页面并不适合对 TypeScript 不熟悉的读者使用,因此它们可能会使用你尚未阅读的高级术语或主题。

最后,除非必要,本手册不会介绍 TypeScript 与其他工具之间的交互方式。关于如何配置 TypeScript 与 webpack、rollup、parcel、react、babel、closure、lerna、rush、bazel preact, vue, angular, svelte, jquery, yarn 或 npm 等工具相关主题超出了本手册范围 - 您可以在网络上找到这些资源。

开始使用

在开始学习基础知识之前,我们建议你阅读以下的介绍页面之一。这些介绍旨在强调 TypeScript 与你所喜欢的编程语言之间的关键相似性和差异,并澄清针对那些语言的常见误解。

否则,跳转至 Typescript手册——基础