TypeScript 中文手册全站指南:从快速上手到进阶参考的完整学习路径
文档教程【免费下载链接】TypeScriptTypeScript 使用手册中文版翻译。http://www.typescriptlang.org项目地址https://gitcode.com/gh_mirrors/typ/TypeScript点击查看免费下载本篇文章以本仓库的 README.md 目录骨架为主体系统梳理仓库内全部 TypeScript 中文学习资源包括快速上手教程、官方手册含 v2 新版、进阶参考、声明文件编写、工程配置、Wiki 与历版本发布说明并深入展开tsconfig.json与核心编译选项等配置细节。读完本文你将获得一条从零基础到高级特性、再到工程化配置与迁移升级的完整 TypeScript 学习路径并能直接按图索骥跳转到仓库中对应的中文文档。仓库定位一本持续维护的 TypeScript 中文手册本仓库是对 TypeScript 官方及开源社区书写的手册、版本发布说明等综合内容的中文翻译合集项目始于 2015 年已持续维护多年。正如 PREFACE.md 所述它覆盖了两类内容会持续更新的内容TypeScript 新版本的 Release Notes版本发布说明翻译可能不再更新的内容基于官方旧版 Handbook 的中文翻译官网自 2020 年起改版并重写了大部分文档但旧版手册依然具有学习价值并未过时。仓库整体目录规划清晰按学习阶段分为七大类下文章节即按此展开。线上阅读版本以图书样式发布所有文档均已整理为可直接浏览的 HTML 页面见 docs 目录 下的构建产物。快速上手从 5 分钟入门到主流框架实战zh/tutorials/README.md 汇聚了面向初学者的快速上手系列5 分钟了解 TypeScript最简入门路径覆盖安装、类型注解、接口、类与 Web 应用运行ASP.NET Core 与 ASP.NET 4在微软服务端技术栈中集成 TypeScriptGulp使用 Gulp 自动化编译 TypeScriptKnockout.js、React、React 与 webpack、Angular 2三大主流前端框架下的工程化实践从 JavaScript 迁移到 TypeScript存量 JS 项目的渐进式改造指南。以入门篇为例完整链路是全局安装npm install -g typescript→ 编写greeter.ts→ 执行tsc greeter.ts编译为greeter.js→ 在 HTML 中引入运行。之后依次引入: string类型注解错误示例会触发TS2345: Argument of type number[] is not assignable to parameter of type string、interface Person描述对象结构、class Student结合构造器参数属性public firstName等价于声明同名成员变量最终在编辑器/Playground 中体验悬停查看类型、自动补全、F12 跳转定义与重命名重构等语言服务能力。整个示例演示了 TypeScript 的核心价值静态代码分析 结构类型系统 与 JavaScript 无缝互操作。基础手册核心类型体系的八个支柱zh/handbook/README.md 收录了官方旧版 Handbook 的基础章节构成 TypeScript 的类型地基章节文件核心内容基础类型zh/handbook/basic-types.mdboolean、number、string、数组、元组、枚举、any、void、never、object 等接口zh/handbook/interfaces.md对象形状约束、可选/只读属性、函数类型、索引签名、接口继承函数zh/handbook/functions.md函数类型标注、可选/默认/剩余参数、重载、this与箭头函数字面量类型zh/handbook/literal-types.md字符串/数字/布尔字面量类型、字面量拓宽联合类型和交叉类型zh/handbook/unions-and-intersections.md\|联合、交叉、类型收窄类zh/handbook/classes.md继承、修饰符、抽象类、访问器、与接口的关系枚举zh/handbook/enums.md数字/字符串枚举、常量枚举、异构枚举泛型zh/handbook/generics.md泛型函数/接口/类、约束、默认类型参数这份基础手册与进阶参考见下节在内容上前后衔接建议按「基础类型 → 接口 → 函数 → 类 → 泛型」的顺序阅读之后再进入进阶部分。进阶参考类型系统的高级武器库zh/reference/README.md 对应官方 Handbook 的进阶部分共 16 个主题是类型体操与语言深水区类型层面高级类型交叉/联合的进阶用法、类型守卫、in操作符、keyof、类型兼容性结构化类型系统与函数参数协变/逆变、类型推论、实用工具类型Partial、Pick、Record、Exclude等内置工具语言特性Decorators、声明合并、Iterators 和 Generators、Symbols、三斜线指令/// reference与/// reference types、变量声明var/let/const与解构工程组织模块import/export与模块增强、模块解析Node/Classic 两种解析策略与baseUrl、paths映射、命名空间内部模块、命名空间和模块两者取舍、混入、JSX.tsx语法与类型检查。另外zh/handbook-v2/README.md 收录了新版手册的部分中文翻译其中 zh/handbook-v2/type-manipulation/ 下的「类型操纵」专题覆盖了 泛型、keyof 类型运算符、typeof 类型运算符、索引访问类型、条件类型、映射类型 与模版字面量类型并配套 基础、常见类型、缩小类型范围 等章节可作为旧版手册的互补读物。声明文件为 JavaScript 库补齐类型当 TypeScript 无法直接推断第三方 JS 库的类型时需要手写.d.ts声明文件。zh/declaration-files/README.md 提供了一条完整的学习链介绍声明文件是什么、为什么需要举例通过真实案例学习库结构识别库的类型全局库、模块化库、插件等选择正确的声明模板模板仓库在 zh/declaration-files/templates/ 下提供了可直接套用的模板包括global.d.ts.md全局库、module-function.d.ts.md模块函数、module-class.d.ts.md模块类、module-plugin.d.ts.md模块插件、global-plugin.d.ts.md全局插件、global-modifying-module.d.ts.md全局修改模块以及通用module.d.ts.md最佳实践写作规范与常见误区深入/// reference、declare namespace、export 等底层机制发布如何随 npm 包发布类型使用如何安装并使用types/*包。JavaScript 类型检查不写 TS 也能获得类型保护zh/javascript/type-checking-javascript-files.md 介绍了通过// ts-check注释或 编译选项 中的--allowJs--checkJs组合在不迁移代码的前提下对.js文件执行类型检查。再配合 JSDoc 注释param、type、returns等可以让纯 JS 项目也享受到类型提示与编译期纠错这正是渐进式迁移到 TypeScript 的第一步。工程配置tsconfig.json 与编译选项详解zh/project-config/README.md 是工程化配置的入口其中 zh/project-config/tsconfig.json.md 与 zh/project-config/compiler-options.md 是最核心的两篇。tsconfig.json项目根目录的声明目录下存在tsconfig.json即意味着该目录是 TypeScript 项目的根目录它指定了编译的项目根文件与编译选项。调用方式有两种不带任何输入文件运行tsc编译器会从当前目录开始逐级向上查找tsconfig.json使用--project或-p参数指定包含tsconfig.json的目录。注意当命令行上直接指定了输入文件时tsconfig.json会被忽略。命令行选项会覆盖配置文件中的对应项。配置文件支持两种文件选择方式files显式列出相对或绝对文件路径include/exclude使用 glob 匹配模式支持的三种通配符为*匹配 0 或多个字符不含目录分隔符、?匹配任意单个字符不含目录分隔符、**/递归匹配任意子目录。几个关键行为规则files与include都未指定时默认包含当前目录及子目录下所有.ts、.d.ts、.tsx文件allowJs: true时还含.js、.jsx并排除exclude指定的内容通过files显式指定的文件总是被包含不受exclude影响被files/include指定文件所引用的文件也会被纳入例如A.ts引用了B.ts则B.ts无法被排除除非A.ts本身在exclude中默认排除node_modules、bower_components、jspm_packages与outDir输出目录编译器不会引入可能作为输出的文件包含index.ts时index.js与index.d.ts会被排除。三个高级配置主题types/typeRoots/types三者的取舍默认所有「可见的」node_modules/types包都会自动纳入编译包括逐级向上的父目录。指定typeRoots后只包含该目录下的包指定types后只包含列出的包types: []可完全禁用自动引入。需注意自动引入只对全局声明有意义使用import foo时 TypeScript 仍会查找node_modules与node_modules/types。extends配置继承extends是顶层属性指向另一个配置文件源配置先加载、被继承配置覆盖循环引用会报错。files、include、exclude会被继承配置覆盖配置内的相对路径按所在文件解析。典型用法是抽出一个configs/base.json如开启noImplicitAny、strictNullChecks再由各环境的tsconfig.json继承并局部覆盖。compileOnSave顶层设置该标记后IDE 会在保存文件时依据tsconfig.json重新生成输出需要 Visual Studio 2015、TypeScript 1.8.4 或 atom-typescript 插件支持。核心编译选项速查zh/project-config/compiler-options.md 以表格形式完整列出了全部编译选项含类型与默认值工程中最高频的选项包括选项默认值说明--noImplicitAnyfalse表达式和声明存在隐含any时报错--strictfalse一键启用noImplicitAny、noImplicitThis、alwaysStrict、strictNullChecks、strictFunctionTypes、strictPropertyInitialization、strictBindCallApply等全部严格检查--module/-mtarget ES6 ? ES6 : commonjs生成模块系统None、CommonJS、AMD、System、UMD、ES6/ES2015仅AMD与System可配合--outFile--target目标 ECMAScript 版本间接决定默认注入的libES5 注入DOM, ES5, ScriptHost--declaration/-dfalse生成对应的.d.ts文件--sourceMapfalse生成.map源映射文件--outDir重定向输出目录--outFile将输出合并为单文件顺序由引用/导入顺序决定--jsxpreserve.tsx文件 JSX 处理preserve、react、react-native--allowJsfalse允许编译 JS 文件配合--checkJs对 JS 做类型检查--noEmit/--noEmitOnErrorfalse不生成输出 / 报错时不生成输出--noUnusedLocals/--noUnusedParametersfalse未使用的局部变量/参数报错--skipLibCheckfalse跳过所有*.d.ts的类型检查加速编译--moduleResolutionmodule为 AMD/System/ES6 时Classic否则Node模块解析策略--baseUrlpaths非相对模块名的基准目录与路径映射--build/-bfalse基于 Project References 构建工程及其依赖与其它标记不兼容--project/-p编译指定目录下的项目须含tsconfig.json--init初始化项目并生成tsconfig.json其余选项还包括--lib自定义引入库列表、--experimentalDecorators实验性装饰器、--emitDecoratorMetadata、--removeComments、--importHelpers从tslib导入辅助函数、--pretty错误着色、--locale错误信息语言、--rootDir/rootDirs、--diagnostics等完整列表请查阅 编译选项文档。工程配置系列还包含工程引用大型多工程拆分的引用与构建、NPM 包的类型types与内置类型、配置 Watchwatch 模式参数、在 MSBuild 里使用编译选项、使用 TypeScript 的每日构建版本跟踪next每日构建。对应的 HTML 构建产物位于 docs/zh/project-config/。Wiki来自社区的实战经验zh/wiki/README.md 汇集了社区实践中的高频话题TypeScript 里的 this函数与箭头函数的this语义编码规范TypeScript 代码风格建议常见编译错误日常报错速查表支持 TypeScript 的编辑器编辑器与语言服务生态结合 ASP.NET v5 使用 TypeScript架构概述TypeScript 编译器内部结构Scanner → Parser → Binder → Checker → Emitter 的流水线发展路线图官方规划追踪。版本发布说明与 Breaking Changes升级路上的避坑指南仓库维护了两套版本资料是升级评估的第一手材料新增功能从 TypeScript 6.02026 年 3 月发布一直到 TypeScript 1.1 的完整 Release Notes 翻译每篇独立成文可按版本纵向追踪语言特性演进Breaking Changes记录各版本破坏性变更从 3.6 回溯到 1.4例如类型检查收紧、API 调整等在升级时需要额外注意的改动建议在升级前逐条对照检查。这两套资料的 HTML 构建产物分别位于 docs/zh/release-notes/ 与 docs/zh/breaking-changes/。如何高效使用本仓库根据学习目标推荐三条使用路径零基础入门读 5 分钟了解 TypeScript → 通读 基础手册 八章 → 选一个框架教程React/webpack、Angular 等实战进阶提升按 进阶参考 的 16 个主题逐个击破重点攻克高级类型、类型兼容性与模块解析工程化落地以 tsconfig.json 与 编译选项 为配置依据结合声明文件与 JS 类型检查改造存量项目。所有 Markdown 源文档均可直接阅读仓库同时维护了编译后的静态站点docs 目录两类版本内容一一对应可任选一种形式查阅。若希望参与翻译与校对可参考 CONTRIBUTING.md 的贡献约定向本仓库提交 Pull Request。赞分享文档教程【免费下载链接】TypeScriptTypeScript 使用手册中文版翻译。http://www.typescriptlang.org项目地址https://gitcode.com/gh_mirrors/typ/TypeScript点击查看免费下载相关推荐TypeScript 使用指南手册从入门到精通的完整学习路径TypeScript 使用指南手册从入门到精通的完整学习路径 TypeScript 作为 JavaScript 的超集为前端开发带来了静态类型检查的强大能力文档教程ReSwift学习路径从新手到专家的进阶指南ReSwift学习路径从新手到专家的进阶指南 你是否在Swift应用开发中遇到状态管理混乱、组件通信复杂的问题是否想让应用状态变更更加可预测、调试更加简单如何告别抢票焦虑这个智能自动化系统让你轻松买到心仪演出票如何告别抢票焦虑这个智能自动化系统让你轻松买到心仪演出票 还在为热门演唱会门票秒光而烦恼吗每次开票都像一场与时间的赛跑手速再快也抢不过专业的黄牛和脚本今GUI 自动化RPA上一篇ModernWpf性能优化技巧让你的现代化应用运行如飞下一篇5分钟掌握mootdxPython获取A股数据的终极方案创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考