Document not found (404)
+This URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +
+
+在该书中,尝试着尽可能完整地介绍TypeScript语言的基础知识,并结合了一些本人的使用经验和体会。
+它主要面向的是TypeScript语言的初级和中级使用者。
+本人还处于TypeScript语言的学习阶段,可能存在理解错误的地方,还请大家指正,一起进步。
+但需要强调的是,本书不是对 Handbook 的翻译。
+
+## 感谢
+
+在过去的七年中,有很多素不相识、极富开源精神的小伙伴们曾参与到本工程的翻译与校对工作中。
+对你们表示感谢!同时也欢迎其它任何想参与到该工程中的朋友们,贡献你们的力量!
diff --git a/README.md b/README.md
index 4d7c00d5..ba0903a4 100755
--- a/README.md
+++ b/README.md
@@ -2,138 +2,180 @@
[](https://travis-ci.org/zhongsp/TypeScript) [](http://makeapullrequest.com)
-
[TypeScript 4.0 (August 20, 2020)](https://devblogs.microsoft.com/typescript/announcing-typescript-4-0/)
+## 上新!
+
+之前有许多小伙伴提出希望能将该手册发布为**Book**,
+近来该项目又持续不断地有新的朋友关注,
+因此现将所有文档整理发布为**图书**样式。希望大家能够喜欢!
+
+线上阅读地址:[https://zhongsp.github.io/TypeScript](https://zhongsp.github.io/TypeScript)
+
+---
+
+
+
+
[TypeScript 5.9 (2025 年 8 月 1 日)](https://devblogs.microsoft.com/typescript/announcing-typescript-5-9)
|
-[版本发布说明](./release-notes/typescript-4.0.md)
+[版本发布说明](zh/release-notes/typescript-5.9.md)
+
+:heavy_check_mark: TypeScript 语言用于大规模应用的 JavaScript 开发。 :heavy_check_mark: TypeScript 支持类型,是 JavaScript 的超集且可以编译成纯 JavaScript 代码。 :heavy_check_mark: TypeScript 兼容所有浏览器,所有宿主环境,所有操作系统。 :heavy_check_mark: TypeScript 是开源的。
-:heavy_check_mark: TypeScript语言用于大规模应用的JavaScript开发。 :heavy_check_mark: TypeScript支持类型,是JavaScript的超集且可以编译成纯JavaScript代码。 :heavy_check_mark: TypeScript兼容所有浏览器,所有宿主环境,所有操作系统。 :heavy_check_mark: TypeScript是开源的。
+:new::new::new:
-
+
`ISBN 9787111669722`
-:link: [一大波新的快速开始指南:React,Angular,Nodejs,ASP.NET Core,React Native,Vue,Glimmer,WeChat,Dojo2,Knockout等](./doc/quick-start/README.md)
+各位朋友们,本人近期出版了[《TypeScript 入门与实战》](https://github.com/zhongsp/TypeScript/issues/310)一书。在该书中,尝试着尽可能完整地介绍 TypeScript 语言的基础知识,并结合了一些本人的使用经验和体会。它主要面向的是 TypeScript 语言的初级和中级使用者。
-
如果觉得不错可以微信打赏哟 <3
+本人还处于 TypeScript 语言的学习阶段,可能存在理解错误的地方,还请大家指正,一起进步。此外,由于这是本人人生中出版的第一本书,难免会有纰漏,请大家多多包涵!
+
+
+
+如果觉得不错可以微信打赏哟 <3
## 目录
-* [快速上手](tutorials/README.md)
- * [5分钟了解TypeScript](tutorials/typescript-in-5-minutes.md)
- * [ASP.NET Core](tutorials/asp.net-core.md)
- * [ASP.NET 4](tutorials/asp.net-4.md)
- * [Gulp](tutorials/gulp.md)
- * [Knockout.js](tutorials/knockout.md)
- * [React与webpack](tutorials/react-and-webpack.md)
- * [React](tutorials/react.md)
- * [Angular 2](tutorials/angular-2.md)
- * [从JavaScript迁移到TypeScript](tutorials/migrating-from-javascript.md)
-* [手册](handbook/README.md)
- * [基础类型](handbook/basic-types.md)
- * [变量声明](handbook/variable-declarations.md)
- * [接口](handbook/interfaces.md)
- * [类](handbook/classes.md)
- * [函数](handbook/functions.md)
- * [字面量类型](handbook/literal-types.md)
- * [泛型](handbook/generics.md)
- * [枚举](handbook/enums.md)
- * [类型推论](handbook/type-inference.md)
- * [类型兼容性](handbook/type-compatibility.md)
- * [高级类型](handbook/advanced-types.md)
- * [Symbols](handbook/symbols.md)
- * [Iterators 和 Generators](handbook/iterators-and-generators.md)
- * [模块](handbook/modules.md)
- * [命名空间](handbook/namespaces.md)
- * [命名空间和模块](handbook/namespaces-and-modules.md)
- * [模块解析](handbook/module-resolution.md)
- * [声明合并](handbook/declaration-merging.md)
- * [JSX](handbook/jsx.md)
- * [Decorators](handbook/decorators.md)
- * [混入](handbook/mixins.md)
- * [三斜线指令](handbook/triple-slash-directives.md)
- * [JavaScript文件里的类型检查](handbook/type-checking-javascript-files.md)
- * [实用工具类型](handbook/utility-types.md)
-* [如何书写声明文件](introduction/README.md)
- * [介绍](introduction/introduction.md)
- * [库结构](introduction/library-structures.md)
- * [举例](introduction/by-example.md)
- * [最佳实践](introduction/do-s-and-don-ts.md)
- * [深入](introduction/deep-dive.md)
- * [模板](introduction/templates.md)
- * [发布](introduction/publishing.md)
- * [使用](introduction/consumption.md)
-* [工程配置](tsconfig.json/README.md)
- * [tsconfig.json](tsconfig.json/tsconfig.json.md)
- * [工程引用](tsconfig.json/project-references.md)
- * [NPM包的类型](tsconfig.json/typings-for-npm-packages.md)
- * [编译选项](tsconfig.json/compiler-options.md)
- * [配置 Watch](tsconfig.json/configuring-watch.md)
- * [在MSBuild里使用编译选项](tsconfig.json/compiler-options-in-msbuild.md)
- * [与其它构建工具整合](tsconfig.json/integrating-with-build-tools.md)
- * [使用TypeScript的每日构建版本](tsconfig.json/nightly-builds.md)
-* [Wiki](wiki/README.md)
- * [TypeScript里的this](wiki/this-in-typescript.md)
- * [编码规范](wiki/coding_guidelines.md)
- * [常见编译错误](wiki/common-errors.md)
- * [支持TypeScript的编辑器](wiki/typescript-editor-support.md)
- * [结合ASP.NET v5使用TypeScript](wiki/using-typescript-with-asp.net-5.md)
- * [架构概述](wiki/architectural-overview.md)
- * [发展路线图](wiki/roadmap.md)
-* [新增功能](release-notes/README.md)
- * [TypeScript 4.0](release-notes/typescript-4.0.md)
- * [TypeScript 3.9](release-notes/typescript-3.9.md)
- * [TypeScript 3.8](release-notes/typescript-3.8.md)
- * [TypeScript 3.7](release-notes/typescript-3.7.md)
- * [TypeScript 3.6](release-notes/typescript-3.6.md)
- * [TypeScript 3.5](release-notes/typescript-3.5.md)
- * [TypeScript 3.4](release-notes/typescript-3.4.md)
- * [TypeScript 3.3](release-notes/typescript-3.3.md)
- * [TypeScript 3.2](release-notes/typescript-3.2.md)
- * [TypeScript 3.1](release-notes/typescript-3.1.md)
- * [TypeScript 3.0](release-notes/typescript-3.0.md)
- * [TypeScript 2.9](release-notes/typescript-2.9.md)
- * [TypeScript 2.8](release-notes/typescript-2.8.md)
- * [TypeScript 2.7](release-notes/typescript-2.7.md)
- * [TypeScript 2.6](release-notes/typescript-2.6.md)
- * [TypeScript 2.5](release-notes/typescript-2.5.md)
- * [TypeScript 2.4](release-notes/typescript-2.4.md)
- * [TypeScript 2.3](release-notes/typescript-2.3.md)
- * [TypeScript 2.2](release-notes/typescript-2.2.md)
- * [TypeScript 2.1](release-notes/typescript-2.1.md)
- * [TypeScript 2.0](release-notes/typescript-2.0.md)
- * [TypeScript 1.8](release-notes/typescript-1.8.md)
- * [TypeScript 1.7](release-notes/typescript-1.7.md)
- * [TypeScript 1.6](release-notes/typescript-1.6.md)
- * [TypeScript 1.5](release-notes/typescript-1.5.md)
- * [TypeScript 1.4](release-notes/typescript-1.4.md)
- * [TypeScript 1.3](release-notes/typescript-1.3.md)
- * [TypeScript 1.1](release-notes/typescript-1.1.md)
-* [Breaking Changes](breaking-changes/README.md)
- * [TypeScript 3.6](breaking-changes/typescript-3.6.md)
- * [TypeScript 3.5](breaking-changes/typescript-3.5.md)
- * [TypeScript 3.4](breaking-changes/typescript-3.4.md)
- * [TypeScript 3.2](breaking-changes/typescript-3.2.md)
- * [TypeScript 3.1](breaking-changes/typescript-3.1.md)
- * [TypeScript 3.0](breaking-changes/typescript-3.0.md)
- * [TypeScript 2.9](breaking-changes/typescript-2.9.md)
- * [TypeScript 2.8](breaking-changes/typescript-2.8.md)
- * [TypeScript 2.7](breaking-changes/typescript-2.7.md)
- * [TypeScript 2.6](breaking-changes/typescript-2.6.md)
- * [TypeScript 2.4](breaking-changes/typescript-2.4.md)
- * [TypeScript 2.3](breaking-changes/typescript-2.3.md)
- * [TypeScript 2.2](breaking-changes/typescript-2.2.md)
- * [TypeScript 2.1](breaking-changes/typescript-2.1.md)
- * [TypeScript 2.0](breaking-changes/typescript-2.0.md)
- * [TypeScript 1.8](breaking-changes/typescript-1.8.md)
- * [TypeScript 1.7](breaking-changes/typescript-1.7.md)
- * [TypeScript 1.6](breaking-changes/typescript-1.6.md)
- * [TypeScript 1.5](breaking-changes/typescript-1.5.md)
- * [TypeScript 1.4](breaking-changes/typescript-1.4.md)
-
-**TypeScript手册官方英文版**
-
-* [TypeScript手册(英文版)](http://www.typescriptlang.org/docs/home.html)
-
-**TypeScript语言规范**
-
-* [TypeScript语言规范](https://github.com/Microsoft/TypeScript/blob/master/doc/spec.md)
+- [快速上手](zh/tutorials/README.md)
+ - [5 分钟了解 TypeScript](zh/tutorials/typescript-in-5-minutes.md)
+ - [ASP.NET Core](zh/tutorials/asp.net-core.md)
+ - [ASP.NET 4](zh/tutorials/asp.net-4.md)
+ - [Gulp](zh/tutorials/gulp.md)
+ - [Knockout.js](zh/tutorials/knockout.md)
+ - [React 与 webpack](zh/tutorials/react-and-webpack.md)
+ - [React](zh/tutorials/react.md)
+ - [Angular 2](zh/tutorials/angular-2.md)
+ - [从 JavaScript 迁移到 TypeScript](zh/tutorials/migrating-from-javascript.md)
+- [手册](zh/handbook/README.md)
+ - [基础类型](zh/handbook/basic-types.md)
+ - [接口](zh/handbook/interfaces.md)
+ - [函数](zh/handbook/functions.md)
+ - [字面量类型](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)
+ - [高级类型](zh/reference/advanced-types.md)
+ - [实用工具类型](zh/reference/utility-types.md)
+ - [Decorators](zh/reference/decorators.md)
+ - [声明合并](zh/reference/declaration-merging.md)
+ - [Iterators 和 Generators](zh/reference/iterators-and-generators.md)
+ - [JSX](zh/reference/jsx.md)
+ - [混入](zh/reference/mixins.md)
+ - [模块](zh/reference/modules.md)
+ - [模块解析](zh/reference/module-resolution.md)
+ - [命名空间](zh/reference/namespaces.md)
+ - [命名空间和模块](zh/reference/namespaces-and-modules.md)
+ - [Symbols](zh/reference/symbols.md)
+ - [三斜线指令](zh/reference/triple-slash-directives.md)
+ - [类型兼容性](zh/reference/type-compatibility.md)
+ - [类型推论](zh/reference/type-inference.md)
+ - [变量声明](zh/reference/variable-declarations.md)
+- 手册(v2)
+ - [模版字面量类型](zh/handbook-v2/type-manipulation/template-literal-types.md)
+- [如何书写声明文件](zh/declaration-files/README.md)
+ - [介绍](zh/declaration-files/introduction.md)
+ - [举例](zh/declaration-files/by-example.md)
+ - [库结构](zh/declaration-files/library-structures.md)
+ - [模板](zh/declaration-files/templates.md)
+ - [最佳实践](zh/declaration-files/do-s-and-don-ts.md)
+ - [深入](zh/declaration-files/deep-dive.md)
+ - [发布](zh/declaration-files/publishing.md)
+ - [使用](zh/declaration-files/consumption.md)
+- JavaScript
+ - [JavaScript 文件里的类型检查](zh/javascript/type-checking-javascript-files.md)
+- [工程配置](zh/project-config/README.md)
+ - [tsconfig.json](zh/project-config/tsconfig.json.md)
+ - [工程引用](zh/project-config/project-references.md)
+ - [NPM 包的类型](zh/project-config/typings-for-npm-packages.md)
+ - [编译选项](zh/project-config/compiler-options.md)
+ - [配置 Watch](zh/project-config/configuring-watch.md)
+ - [在 MSBuild 里使用编译选项](zh/project-config/compiler-options-in-msbuild.md)
+ - [与其它构建工具整合](zh/project-config/integrating-with-build-tools.md)
+ - [使用 TypeScript 的每日构建版本](zh/project-config/nightly-builds.md)
+- [Wiki](zh/wiki/README.md)
+ - [TypeScript 里的 this](zh/wiki/this-in-typescript.md)
+ - [编码规范](zh/wiki/coding_guidelines.md)
+ - [常见编译错误](zh/wiki/common-errors.md)
+ - [支持 TypeScript 的编辑器](zh/wiki/typescript-editor-support.md)
+ - [结合 ASP.NET v5 使用 TypeScript](zh/wiki/using-typescript-with-asp.net-5.md)
+ - [架构概述](zh/wiki/architectural-overview.md)
+ - [发展路线图](zh/wiki/roadmap.md)
+- [新增功能](zh/release-notes/README.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.9.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.8.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.7.md)
+ - [TypeScript 5.6](zh/release-notes/typescript-5.6.md)
+ - [TypeScript 5.5](zh/release-notes/typescript-5.5.md)
+ - [TypeScript 5.4](zh/release-notes/typescript-5.4.md)
+ - [TypeScript 5.3](zh/release-notes/typescript-5.3.md)
+ - [TypeScript 5.2](zh/release-notes/typescript-5.2.md)
+ - [TypeScript 5.1](zh/release-notes/typescript-5.1.md)
+ - [TypeScript 5.0](zh/release-notes/typescript-5.0.md)
+ - [TypeScript 4.9](zh/release-notes/typescript-4.9.md)
+ - [TypeScript 4.8](zh/release-notes/typescript-4.8.md)
+ - [TypeScript 4.7](zh/release-notes/typescript-4.7.md)
+ - [TypeScript 4.6](zh/release-notes/typescript-4.6.md)
+ - [TypeScript 4.5](zh/release-notes/typescript-4.5.md)
+ - [TypeScript 4.4](zh/release-notes/typescript-4.4.md)
+ - [TypeScript 4.3](zh/release-notes/typescript-4.3.md)
+ - [TypeScript 4.2](zh/release-notes/typescript-4.2.md)
+ - [TypeScript 4.1](zh/release-notes/typescript-4.1.md)
+ - [TypeScript 4.0](zh/release-notes/typescript-4.0.md)
+ - [TypeScript 3.9](zh/release-notes/typescript-3.9.md)
+ - [TypeScript 3.8](zh/release-notes/typescript-3.8.md)
+ - [TypeScript 3.7](zh/release-notes/typescript-3.7.md)
+ - [TypeScript 3.6](zh/release-notes/typescript-3.6.md)
+ - [TypeScript 3.5](zh/release-notes/typescript-3.5.md)
+ - [TypeScript 3.4](zh/release-notes/typescript-3.4.md)
+ - [TypeScript 3.3](zh/release-notes/typescript-3.3.md)
+ - [TypeScript 3.2](zh/release-notes/typescript-3.2.md)
+ - [TypeScript 3.1](zh/release-notes/typescript-3.1.md)
+ - [TypeScript 3.0](zh/release-notes/typescript-3.0.md)
+ - [TypeScript 2.9](zh/release-notes/typescript-2.9.md)
+ - [TypeScript 2.8](zh/release-notes/typescript-2.8.md)
+ - [TypeScript 2.7](zh/release-notes/typescript-2.7.md)
+ - [TypeScript 2.6](zh/release-notes/typescript-2.6.md)
+ - [TypeScript 2.5](zh/release-notes/typescript-2.5.md)
+ - [TypeScript 2.4](zh/release-notes/typescript-2.4.md)
+ - [TypeScript 2.3](zh/release-notes/typescript-2.3.md)
+ - [TypeScript 2.2](zh/release-notes/typescript-2.2.md)
+ - [TypeScript 2.1](zh/release-notes/typescript-2.1.md)
+ - [TypeScript 2.0](zh/release-notes/typescript-2.0.md)
+ - [TypeScript 1.8](zh/release-notes/typescript-1.8.md)
+ - [TypeScript 1.7](zh/release-notes/typescript-1.7.md)
+ - [TypeScript 1.6](zh/release-notes/typescript-1.6.md)
+ - [TypeScript 1.5](zh/release-notes/typescript-1.5.md)
+ - [TypeScript 1.4](zh/release-notes/typescript-1.4.md)
+ - [TypeScript 1.3](zh/release-notes/typescript-1.3.md)
+ - [TypeScript 1.1](zh/release-notes/typescript-1.1.md)
+- [Breaking Changes](zh/breaking-changes/README.md)
+ - [TypeScript 3.6](zh/breaking-changes/typescript-3.6.md)
+ - [TypeScript 3.5](zh/breaking-changes/typescript-3.5.md)
+ - [TypeScript 3.4](zh/breaking-changes/typescript-3.4.md)
+ - [TypeScript 3.2](zh/breaking-changes/typescript-3.2.md)
+ - [TypeScript 3.1](zh/breaking-changes/typescript-3.1.md)
+ - [TypeScript 3.0](zh/breaking-changes/typescript-3.0.md)
+ - [TypeScript 2.9](zh/breaking-changes/typescript-2.9.md)
+ - [TypeScript 2.8](zh/breaking-changes/typescript-2.8.md)
+ - [TypeScript 2.7](zh/breaking-changes/typescript-2.7.md)
+ - [TypeScript 2.6](zh/breaking-changes/typescript-2.6.md)
+ - [TypeScript 2.4](zh/breaking-changes/typescript-2.4.md)
+ - [TypeScript 2.3](zh/breaking-changes/typescript-2.3.md)
+ - [TypeScript 2.2](zh/breaking-changes/typescript-2.2.md)
+ - [TypeScript 2.1](zh/breaking-changes/typescript-2.1.md)
+ - [TypeScript 2.0](zh/breaking-changes/typescript-2.0.md)
+ - [TypeScript 1.8](zh/breaking-changes/typescript-1.8.md)
+ - [TypeScript 1.7](zh/breaking-changes/typescript-1.7.md)
+ - [TypeScript 1.6](zh/breaking-changes/typescript-1.6.md)
+ - [TypeScript 1.5](zh/breaking-changes/typescript-1.5.md)
+ - [TypeScript 1.4](zh/breaking-changes/typescript-1.4.md)
+
+**TypeScript 手册官方英文版**
+
+- [TypeScript 手册(英文版)](http://www.typescriptlang.org/docs/home.html)
+
+**TypeScript 语言规范**
+
+- [TypeScript 语言规范](https://github.com/microsoft/TypeScript/blob/master/doc/spec-ARCHIVED.md)
期待你为翻译做出贡献:)
diff --git a/SUMMARY.md b/SUMMARY.md
index 8af002c1..39375992 100644
--- a/SUMMARY.md
+++ b/SUMMARY.md
@@ -1,114 +1,156 @@
-# Table of contents
-
-* [Introduction](preface.md)
-* [快速上手](tutorials/README.md)
- * [5分钟了解TypeScript](tutorials/typescript-in-5-minutes.md)
- * [ASP.NET Core](tutorials/asp.net-core.md)
- * [ASP.NET 4](tutorials/asp.net-4.md)
- * [Gulp](tutorials/gulp.md)
- * [Knockout.js](tutorials/knockout.md)
- * [React与webpack](tutorials/react-and-webpack.md)
- * [React](tutorials/react.md)
- * [Angular 2](tutorials/angular-2.md)
- * [从JavaScript迁移到TypeScript](tutorials/migrating-from-javascript.md)
-* [手册](handbook/README.md)
- * [基础类型](handbook/basic-types.md)
- * [变量声明](handbook/variable-declarations.md)
- * [接口](handbook/interfaces.md)
- * [类](handbook/classes.md)
- * [函数](handbook/functions.md)
- * [泛型](handbook/generics.md)
- * [枚举](handbook/enums.md)
- * [类型推论](handbook/type-inference.md)
- * [类型兼容性](handbook/type-compatibility.md)
- * [高级类型](handbook/advanced-types.md)
- * [Symbols](handbook/symbols.md)
- * [Iterators 和 Generators](handbook/iterators-and-generators.md)
- * [模块](handbook/modules.md)
- * [命名空间](handbook/namespaces.md)
- * [命名空间和模块](handbook/namespaces-and-modules.md)
- * [模块解析](handbook/module-resolution.md)
- * [声明合并](handbook/declaration-merging.md)
- * [JSX](handbook/jsx.md)
- * [Decorators](handbook/decorators.md)
- * [混入](handbook/mixins.md)
- * [三斜线指令](handbook/triple-slash-directives.md)
- * [JavaScript文件里的类型检查](handbook/type-checking-javascript-files.md)
- * [实用工具类型](handbook/utility-types.md)
-* [如何书写声明文件](introduction/README.md)
- * [介绍](introduction/introduction.md)
- * [库结构](introduction/library-structures.md)
- * [举例](introduction/by-example.md)
- * [最佳实践](introduction/do-s-and-don-ts.md)
- * [深入](introduction/deep-dive.md)
- * [模板](introduction/templates.md)
- * [发布](introduction/publishing.md)
- * [使用](introduction/consumption.md)
-* [工程配置](tsconfig.json/README.md)
- * [tsconfig.json](tsconfig.json/tsconfig.json.md)
- * [工程引用](tsconfig.json/project-references.md)
- * [NPM包的类型](tsconfig.json/typings-for-npm-packages.md)
- * [编译选项](tsconfig.json/compiler-options.md)
- * [配置 Watch](tsconfig.json/configuring-watch.md)
- * [在MSBuild里使用编译选项](tsconfig.json/compiler-options-in-msbuild.md)
- * [与其它构建工具整合](tsconfig.json/integrating-with-build-tools.md)
- * [使用TypeScript的每日构建版本](tsconfig.json/nightly-builds.md)
-* [Wiki](wiki/README.md)
- * [TypeScript里的this](wiki/this-in-typescript.md)
- * [编码规范](wiki/coding_guidelines.md)
- * [常见编译错误](wiki/common-errors.md)
- * [支持TypeScript的编辑器](wiki/typescript-editor-support.md)
- * [结合ASP.NET v5使用TypeScript](wiki/using-typescript-with-asp.net-5.md)
- * [架构概述](wiki/architectural-overview.md)
- * [发展路线图](wiki/roadmap.md)
-* [新增功能](release-notes/README.md)
- * [TypeScript 4.0](release-notes/typescript-4.0.md)
- * [TypeScript 3.9](release-notes/typescript-3.9.md)
- * [TypeScript 3.8](release-notes/typescript-3.8.md)
- * [TypeScript 3.7](release-notes/typescript-3.7.md)
- * [TypeScript 3.6](release-notes/typescript-3.6.md)
- * [TypeScript 3.5](release-notes/typescript-3.5.md)
- * [TypeScript 3.4](release-notes/typescript-3.4.md)
- * [TypeScript 3.3](release-notes/typescript-3.3.md)
- * [TypeScript 3.2](release-notes/typescript-3.2.md)
- * [TypeScript 3.1](release-notes/typescript-3.1.md)
- * [TypeScript 3.0](release-notes/typescript-3.0.md)
- * [TypeScript 2.9](release-notes/typescript-2.9.md)
- * [TypeScript 2.8](release-notes/typescript-2.8.md)
- * [TypeScript 2.7](release-notes/typescript-2.7.md)
- * [TypeScript 2.6](release-notes/typescript-2.6.md)
- * [TypeScript 2.5](release-notes/typescript-2.5.md)
- * [TypeScript 2.4](release-notes/typescript-2.4.md)
- * [TypeScript 2.3](release-notes/typescript-2.3.md)
- * [TypeScript 2.2](release-notes/typescript-2.2.md)
- * [TypeScript 2.1](release-notes/typescript-2.1.md)
- * [TypeScript 2.0](release-notes/typescript-2.0.md)
- * [TypeScript 1.8](release-notes/typescript-1.8.md)
- * [TypeScript 1.7](release-notes/typescript-1.7.md)
- * [TypeScript 1.6](release-notes/typescript-1.6.md)
- * [TypeScript 1.5](release-notes/typescript-1.5.md)
- * [TypeScript 1.4](release-notes/typescript-1.4.md)
- * [TypeScript 1.3](release-notes/typescript-1.3.md)
- * [TypeScript 1.1](release-notes/typescript-1.1.md)
-* [Breaking Changes](breaking-changes/README.md)
- * [TypeScript 3.6](breaking-changes/typescript-3.6.md)
- * [TypeScript 3.5](breaking-changes/typescript-3.5.md)
- * [TypeScript 3.4](breaking-changes/typescript-3.4.md)
- * [TypeScript 3.2](breaking-changes/typescript-3.2.md)
- * [TypeScript 3.1](breaking-changes/typescript-3.1.md)
- * [TypeScript 3.0](breaking-changes/typescript-3.0.md)
- * [TypeScript 2.9](breaking-changes/typescript-2.9.md)
- * [TypeScript 2.8](breaking-changes/typescript-2.8.md)
- * [TypeScript 2.7](breaking-changes/typescript-2.7.md)
- * [TypeScript 2.6](breaking-changes/typescript-2.6.md)
- * [TypeScript 2.4](breaking-changes/typescript-2.4.md)
- * [TypeScript 2.3](breaking-changes/typescript-2.3.md)
- * [TypeScript 2.2](breaking-changes/typescript-2.2.md)
- * [TypeScript 2.1](breaking-changes/typescript-2.1.md)
- * [TypeScript 2.0](breaking-changes/typescript-2.0.md)
- * [TypeScript 1.8](breaking-changes/typescript-1.8.md)
- * [TypeScript 1.7](breaking-changes/typescript-1.7.md)
- * [TypeScript 1.6](breaking-changes/typescript-1.6.md)
- * [TypeScript 1.5](breaking-changes/typescript-1.5.md)
- * [TypeScript 1.4](breaking-changes/typescript-1.4.md)
+# TypeScript 使用指南手册
+[前言](PREFACE.md)
+
+# 快速上手
+
+- [快速上手](zh/tutorials/README.md)
+ - [5 分钟了解 TypeScript](zh/tutorials/typescript-in-5-minutes.md)
+ - [ASP.NET Core](zh/tutorials/asp.net-core.md)
+ - [ASP.NET 4](zh/tutorials/asp.net-4.md)
+ - [Gulp](zh/tutorials/gulp.md)
+ - [Knockout.js](zh/tutorials/knockout.md)
+ - [React 与 webpack](zh/tutorials/react-and-webpack.md)
+ - [React](zh/tutorials/react.md)
+ - [Angular 2](zh/tutorials/angular-2.md)
+ - [从 JavaScript 迁移到 TypeScript](zh/tutorials/migrating-from-javascript.md)
+
+# 手册
+
+- [手册](zh/handbook/README.md)
+ - [基础类型](zh/handbook/basic-types.md)
+ - [接口](zh/handbook/interfaces.md)
+ - [函数](zh/handbook/functions.md)
+ - [字面量类型](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)
+ - [高级类型](zh/reference/advanced-types.md)
+ - [实用工具类型](zh/reference/utility-types.md)
+ - [Decorators](zh/reference/decorators.md)
+ - [声明合并](zh/reference/declaration-merging.md)
+ - [Iterators 和 Generators](zh/reference/iterators-and-generators.md)
+ - [JSX](zh/reference/jsx.md)
+ - [混入](zh/reference/mixins.md)
+ - [模块](zh/reference/modules.md)
+ - [模块解析](zh/reference/module-resolution.md)
+ - [命名空间](zh/reference/namespaces.md)
+ - [命名空间和模块](zh/reference/namespaces-and-modules.md)
+ - [Symbols](zh/reference/symbols.md)
+ - [三斜线指令](zh/reference/triple-slash-directives.md)
+ - [类型兼容性](zh/reference/type-compatibility.md)
+ - [类型推论](zh/reference/type-inference.md)
+ - [变量声明](zh/reference/variable-declarations.md)
+
+# 手册(v2)
+
+- [手册(v2)](zh/handbook-v2/README.md)
+ - [模版字面量类型](zh/handbook-v2/type-manipulation/template-literal-types.md)
+
+# TypeScript 声明文件(.d.ts)
+
+- [如何书写声明文件](zh/declaration-files/README.md)
+ - [介绍](zh/declaration-files/introduction.md)
+ - [举例](zh/declaration-files/by-example.md)
+ - [库结构](zh/declaration-files/library-structures.md)
+ - [模板](zh/declaration-files/templates.md)
+ - [最佳实践](zh/declaration-files/do-s-and-don-ts.md)
+ - [深入](zh/declaration-files/deep-dive.md)
+ - [发布](zh/declaration-files/publishing.md)
+ - [使用](zh/declaration-files/consumption.md)
+
+# TypeScript for JavaScript
+
+- [JavaScript 文件里的类型检查](zh/javascript/type-checking-javascript-files.md)
+
+# 工程配置
+
+- [工程配置](zh/project-config/README.md)
+ - [tsconfig.json](zh/project-config/tsconfig.json.md)
+ - [工程引用](zh/project-config/project-references.md)
+ - [NPM 包的类型](zh/project-config/typings-for-npm-packages.md)
+ - [编译选项](zh/project-config/compiler-options.md)
+ - [配置 Watch](zh/project-config/configuring-watch.md)
+ - [在 MSBuild 里使用编译选项](zh/project-config/compiler-options-in-msbuild.md)
+ - [与其它构建工具整合](zh/project-config/integrating-with-build-tools.md)
+ - [使用 TypeScript 的每日构建版本](zh/project-config/nightly-builds.md)
+
+# 版本发布说明(Release Notes)
+
+- [新增功能](zh/release-notes/README.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.9.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.8.md)
+ - [TypeScript 5.7](zh/release-notes/typescript-5.7.md)
+ - [TypeScript 5.6](zh/release-notes/typescript-5.6.md)
+ - [TypeScript 5.5](zh/release-notes/typescript-5.5.md)
+ - [TypeScript 5.4](zh/release-notes/typescript-5.4.md)
+ - [TypeScript 5.3](zh/release-notes/typescript-5.3.md)
+ - [TypeScript 5.2](zh/release-notes/typescript-5.2.md)
+ - [TypeScript 5.1](zh/release-notes/typescript-5.1.md)
+ - [TypeScript 5.0](zh/release-notes/typescript-5.0.md)
+ - [TypeScript 4.9](zh/release-notes/typescript-4.9.md)
+ - [TypeScript 4.8](zh/release-notes/typescript-4.8.md)
+ - [TypeScript 4.7](zh/release-notes/typescript-4.7.md)
+ - [TypeScript 4.6](zh/release-notes/typescript-4.6.md)
+ - [TypeScript 4.5](zh/release-notes/typescript-4.5.md)
+ - [TypeScript 4.4](zh/release-notes/typescript-4.4.md)
+ - [TypeScript 4.3](zh/release-notes/typescript-4.3.md)
+ - [TypeScript 4.2](zh/release-notes/typescript-4.2.md)
+ - [TypeScript 4.1](zh/release-notes/typescript-4.1.md)
+ - [TypeScript 4.0](zh/release-notes/typescript-4.0.md)
+ - [TypeScript 3.9](zh/release-notes/typescript-3.9.md)
+ - [TypeScript 3.8](zh/release-notes/typescript-3.8.md)
+ - [TypeScript 3.7](zh/release-notes/typescript-3.7.md)
+ - [TypeScript 3.6](zh/release-notes/typescript-3.6.md)
+ - [TypeScript 3.5](zh/release-notes/typescript-3.5.md)
+ - [TypeScript 3.4](zh/release-notes/typescript-3.4.md)
+ - [TypeScript 3.3](zh/release-notes/typescript-3.3.md)
+ - [TypeScript 3.2](zh/release-notes/typescript-3.2.md)
+ - [TypeScript 3.1](zh/release-notes/typescript-3.1.md)
+ - [TypeScript 3.0](zh/release-notes/typescript-3.0.md)
+ - [TypeScript 2.9](zh/release-notes/typescript-2.9.md)
+ - [TypeScript 2.8](zh/release-notes/typescript-2.8.md)
+ - [TypeScript 2.7](zh/release-notes/typescript-2.7.md)
+ - [TypeScript 2.6](zh/release-notes/typescript-2.6.md)
+ - [TypeScript 2.5](zh/release-notes/typescript-2.5.md)
+ - [TypeScript 2.4](zh/release-notes/typescript-2.4.md)
+ - [TypeScript 2.3](zh/release-notes/typescript-2.3.md)
+ - [TypeScript 2.2](zh/release-notes/typescript-2.2.md)
+ - [TypeScript 2.1](zh/release-notes/typescript-2.1.md)
+ - [TypeScript 2.0](zh/release-notes/typescript-2.0.md)
+ - [TypeScript 1.8](zh/release-notes/typescript-1.8.md)
+ - [TypeScript 1.7](zh/release-notes/typescript-1.7.md)
+ - [TypeScript 1.6](zh/release-notes/typescript-1.6.md)
+ - [TypeScript 1.5](zh/release-notes/typescript-1.5.md)
+ - [TypeScript 1.4](zh/release-notes/typescript-1.4.md)
+ - [TypeScript 1.3](zh/release-notes/typescript-1.3.md)
+ - [TypeScript 1.1](zh/release-notes/typescript-1.1.md)
+
+# 破坏性改动(Breaking Changes)
+
+- [Breaking Changes](zh/breaking-changes/README.md)
+ - [TypeScript 3.6](zh/breaking-changes/typescript-3.6.md)
+ - [TypeScript 3.5](zh/breaking-changes/typescript-3.5.md)
+ - [TypeScript 3.4](zh/breaking-changes/typescript-3.4.md)
+ - [TypeScript 3.2](zh/breaking-changes/typescript-3.2.md)
+ - [TypeScript 3.1](zh/breaking-changes/typescript-3.1.md)
+ - [TypeScript 3.0](zh/breaking-changes/typescript-3.0.md)
+ - [TypeScript 2.9](zh/breaking-changes/typescript-2.9.md)
+ - [TypeScript 2.8](zh/breaking-changes/typescript-2.8.md)
+ - [TypeScript 2.7](zh/breaking-changes/typescript-2.7.md)
+ - [TypeScript 2.6](zh/breaking-changes/typescript-2.6.md)
+ - [TypeScript 2.4](zh/breaking-changes/typescript-2.4.md)
+ - [TypeScript 2.3](zh/breaking-changes/typescript-2.3.md)
+ - [TypeScript 2.2](zh/breaking-changes/typescript-2.2.md)
+ - [TypeScript 2.1](zh/breaking-changes/typescript-2.1.md)
+ - [TypeScript 2.0](zh/breaking-changes/typescript-2.0.md)
+ - [TypeScript 1.8](zh/breaking-changes/typescript-1.8.md)
+ - [TypeScript 1.7](zh/breaking-changes/typescript-1.7.md)
+ - [TypeScript 1.6](zh/breaking-changes/typescript-1.6.md)
+ - [TypeScript 1.5](zh/breaking-changes/typescript-1.5.md)
+ - [TypeScript 1.4](zh/breaking-changes/typescript-1.4.md)
\ No newline at end of file
diff --git a/book.json b/book.json
deleted file mode 100644
index 1d092f8a..00000000
--- a/book.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "gitbook": ">3.0.0",
- "language" : "zh-hans",
- "author": "Patrick Zhong",
- "title": "TypeScript Handbook",
- "description": "Translation of official TypeScript Handbook",
- "structure": {
- "readme": "preface.md"
- },
- "plugins": [
- "page-treeview"
- ],
- "pluginsConfig": {
- "page-treeview": {
- "copyright": "Copyright © zhongsp",
- "style": "markdown"
- }
- }
-}
diff --git a/book.toml b/book.toml
new file mode 100644
index 00000000..591051fa
--- /dev/null
+++ b/book.toml
@@ -0,0 +1,12 @@
+[book]
+authors = ["钟胜平", "zhongsp"]
+language = "zh-Hans"
+multilingual = false
+src = "./"
+title = "TypeScript 使用指南手册"
+description = "TypeScript Handbook 中文翻译。"
+
+[build]
+build-dir = "docs" # the directory where the output is placed
+create-missing = true # whether or not to create missing pages
+use-default-preprocessors = true # use the default preprocessors
diff --git a/breaking-changes/README.md b/breaking-changes/README.md
deleted file mode 100644
index 93ad2432..00000000
--- a/breaking-changes/README.md
+++ /dev/null
@@ -1,24 +0,0 @@
-# Breaking Changes
-
-* [TypeScript 3.6](typescript-3.6.md)
-* [TypeScript 3.5](typescript-3.5.md)
-* [TypeScript 3.4](typescript-3.4.md)
-* [TypeScript 3.2](typescript-3.2.md)
-* [TypeScript 3.1](typescript-3.1.md)
-* [TypeScript 3.0](typescript-3.0.md)
-* [TypeScript 2.9](typescript-2.9.md)
-* [TypeScript 2.8](typescript-2.8.md)
-* [TypeScript 2.7](typescript-2.7.md)
-* [TypeScript 2.6](typescript-2.6.md)
-* [TypeScript 2.4](typescript-2.4.md)
-* [TypeScript 2.3](typescript-2.3.md)
-* [TypeScript 2.2](typescript-2.2.md)
-* [TypeScript 2.1](typescript-2.1.md)
-* [TypeScript 2.0](typescript-2.0.md)
-* [TypeScript 1.8](typescript-1.8.md)
-* [TypeScript 1.7](typescript-1.7.md)
-* [TypeScript 1.6](typescript-1.6.md)
-* [TypeScript 1.5](typescript-1.5.md)
-* [TypeScript 1.4](typescript-1.4.md)
-* [TypeScript 1.1](typescript-1.1.md)
-
diff --git a/breaking-changes/typescript-1.5.md b/breaking-changes/typescript-1.5.md
deleted file mode 100644
index 896a7b6f..00000000
--- a/breaking-changes/typescript-1.5.md
+++ /dev/null
@@ -1,119 +0,0 @@
-# TypeScript 1.5
-
-完整的破坏性改动列表请到这里查看:[breaking change issues](https://github.com/Microsoft/TypeScript/issues?q=is%3Aissue+milestone%3A%22TypeScript+1.5%22+label%3A%22breaking+change%22)。
-
-## 不允许在箭头函数里引用`arguments`
-
-这是为了遵循ES6箭头函数的语义。之前箭头函数里的`arguments`会绑定到箭头函数的参数。参照[ES6规范草稿](http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts) 9.2.12,箭头函数不存在`arguments`对象。 从TypeScript 1.5开始,在箭头函数里使用`arguments`会被标记成错误以确保你的代码转成ES6时没语义上的错误。
-
-**例子:**
-
-```typescript
-function f() {
- return () => arguments; // Error: The 'arguments' object cannot be referenced in an arrow function.
-}
-```
-
-**推荐:**
-
-```typescript
-// 1. 使用带名字的剩余参数
-function f() {
- return (...args) => { args; }
-}
-
-// 2. 使用函数表达式
-function f() {
- return function(){ arguments; }
-}
-```
-
-## 内联枚举引用的改动
-
-对于正常的枚举,在1.5之前,编译器_仅会_内联常量成员,且成员仅在使用字面量初始化时才被当做是常量。这在判断检举值是使用字面量初始化还是表达式时会行为不一致。从TypeScript 1.5开始,所有非const枚举成员都不会被内联。
-
-**例子:**
-
-```typescript
-var x = E.a; // previously inlined as "var x = 1; /*E.a*/"
-
-enum E {
- a = 1
-}
-```
-
-**推荐:** 在枚举声明里添加`const`修饰符来确保它总是被内联。 更多信息,查看[\#2183](https://github.com/Microsoft/TypeScript/issues/2183)。
-
-## 上下文的类型将作用于`super`和括号表达式
-
-在1.5之前,上下文的类型不会作用于括号表达式内部。这就要求做显示的类型转换,尤其是在_必须_使用括号来进行表达式转换的场合。
-
-在下面的例子里,`m`具有上下文的类型,它在之前的版本里是没有的。
-
-```typescript
-var x: SomeType = (n) => ((m) => q);
-var y: SomeType = t ? (m => m.length) : undefined;
-
-class C extends CBaseThis URL is invalid, sorry. Please use the navigation bar or search to continue.
+ +++Repo: https://github.com/zhongsp/TypeScript
+
该工程是对 TypeScript 官方及开源社区书写的编程手册、版本发布说明等综合内容的中文翻译。 +感谢 Microsoft 和开源社区的工程师们的工作,为 JavaScript 开发带来了全新的体验!
+这个项目是我在 2015 年创建的,没想到已经维护快 7 年了,它已然是我参与过的时间最长的项目。 +在 2015 年之前,我都是在使用 JavaScript 语言,主要参与的项目也大都是采用 AngularJS 框架的项目,没有接触过 TypeScript。 +那时候,TypeScript 在国内项目里用的好像不多,但是在国外已经有不少项目开始采用这个新技术。 +2015 年,我正好参与了一个和国外一起合作的项目,决定使用 TypeScript 1.x。 +也正因为这个机会,我开始了 TypeScript 的学习。 +学习没多久,我就喜欢上了这个语言,并且确信这个东西一定能火。 +因为作为一个多年的 JavaScript 程序员来讲,我很清楚它解决了多少痛点(必须得把 VS Code 一起代上)。
+早些时候,TypeScript 的文档也不多。 +原因之一,TypeScript 是 JavaScript 的超集,JavaScript 的知识点已经有足够的资料了,TypeScript 一笔代过。 +原因之二,早期的 TypeScript 里特性不多,知识点不多。原因之三,它的文档相较于做的好的语言来讲确实较弱,可能没什么专门的团队负责,或者没有专职的 technical writer 去写作。 +于是,我决定边学边翻译,一方面为了自己,另一方面为了其它小伙伴。
+我会继续翻译 TypeScript 新版本的 Release Notes。
+这个项目中的 Handbook 是翻译老版本的 Handbook。 +TypeScript 官网大约从 2020 年开始要打造新版的官网,其中包括官网的样式,以及要重写大部分的文档。 +目前,我不打算再翻译一遍新版的 Handbook。 +我看了下新版的手册,确实优化了不少,但也不代表老版本是无用的或错误的。
+现在,TypeScript 官网也开始支持国际化了,已经有部分文档翻译成了中文,我之前还翻译了一篇。 +本着开源和为社区服务的精神,推荐学有余力的同学直接给官网提交翻译的 Pull Reuqest,造福开发者。
+因为长期维护 TypeScript 更新的内容再加上在项目中一直使用 TypeScript, +所以有机会将知识进行梳理总结成书。
+我出版了《TypeScript入门与实战》一书。
+ +在该书中,尝试着尽可能完整地介绍TypeScript语言的基础知识,并结合了一些本人的使用经验和体会。 +它主要面向的是TypeScript语言的初级和中级使用者。 +本人还处于TypeScript语言的学习阶段,可能存在理解错误的地方,还请大家指正,一起进步。 +但需要强调的是,本书不是对 Handbook 的翻译。
+在过去的七年中,有很多素不相识、极富开源精神的小伙伴们曾参与到本工程的翻译与校对工作中。 +对你们表示感谢!同时也欢迎其它任何想参与到该工程中的朋友们,贡献你们的力量!
+ +++Repo: https://github.com/zhongsp/TypeScript
+
该工程是对 TypeScript 官方及开源社区书写的编程手册、版本发布说明等综合内容的中文翻译。 +感谢 Microsoft 和开源社区的工程师们的工作,为 JavaScript 开发带来了全新的体验!
+这个项目是我在 2015 年创建的,没想到已经维护快 7 年了,它已然是我参与过的时间最长的项目。 +在 2015 年之前,我都是在使用 JavaScript 语言,主要参与的项目也大都是采用 AngularJS 框架的项目,没有接触过 TypeScript。 +那时候,TypeScript 在国内项目里用的好像不多,但是在国外已经有不少项目开始采用这个新技术。 +2015 年,我正好参与了一个和国外一起合作的项目,决定使用 TypeScript 1.x。 +也正因为这个机会,我开始了 TypeScript 的学习。 +学习没多久,我就喜欢上了这个语言,并且确信这个东西一定能火。 +因为作为一个多年的 JavaScript 程序员来讲,我很清楚它解决了多少痛点(必须得把 VS Code 一起代上)。
+早些时候,TypeScript 的文档也不多。 +原因之一,TypeScript 是 JavaScript 的超集,JavaScript 的知识点已经有足够的资料了,TypeScript 一笔代过。 +原因之二,早期的 TypeScript 里特性不多,知识点不多。原因之三,它的文档相较于做的好的语言来讲确实较弱,可能没什么专门的团队负责,或者没有专职的 technical writer 去写作。 +于是,我决定边学边翻译,一方面为了自己,另一方面为了其它小伙伴。
+我会继续翻译 TypeScript 新版本的 Release Notes。
+这个项目中的 Handbook 是翻译老版本的 Handbook。 +TypeScript 官网大约从 2020 年开始要打造新版的官网,其中包括官网的样式,以及要重写大部分的文档。 +目前,我不打算再翻译一遍新版的 Handbook。 +我看了下新版的手册,确实优化了不少,但也不代表老版本是无用的或错误的。
+现在,TypeScript 官网也开始支持国际化了,已经有部分文档翻译成了中文,我之前还翻译了一篇。 +本着开源和为社区服务的精神,推荐学有余力的同学直接给官网提交翻译的 Pull Reuqest,造福开发者。
+因为长期维护 TypeScript 更新的内容再加上在项目中一直使用 TypeScript, +所以有机会将知识进行梳理总结成书。
+我出版了《TypeScript入门与实战》一书。
+ +在该书中,尝试着尽可能完整地介绍TypeScript语言的基础知识,并结合了一些本人的使用经验和体会。 +它主要面向的是TypeScript语言的初级和中级使用者。 +本人还处于TypeScript语言的学习阶段,可能存在理解错误的地方,还请大家指正,一起进步。 +但需要强调的是,本书不是对 Handbook 的翻译。
+在过去的七年中,有很多素不相识、极富开源精神的小伙伴们曾参与到本工程的翻译与校对工作中。 +对你们表示感谢!同时也欢迎其它任何想参与到该工程中的朋友们,贡献你们的力量!
+ +