# 深入理解 TypeScript

深入理解TypeScript

# 第 1 章.为什么要使用 Typescript

# 1.1 开始使用 TypeScript

# 1.2 选择 TypeScript 的理由

# 1.3 总结

# 第 2 章.JavaScript 常见语法

# 2.1 相等

# 2.2 引用

# 2.3 null 和 undefined

# 2.4 this

# 2.5 闭包

# 2.6 数字

# 2.7 truthy

# 第 3 章.JavaScript 新语法特性

# 3.1 类

# 3.2 箭头函数

# 3.3 rest 参数

# 3.4 let

# 3.5 const

# 3.6 解构

# 3.7 扩展运算符

# 3.8 for...of

# 3.9 迭代

# 3.10 模版字符串

# 3.11 Promise

# 3.12 generators

# 3.13 async/await

# 第 4 章.TypeScript 项目构成

# 4.1 编译上下文

# 4.2 声明空间

# 4.3 模块

# 4.4 命名空间

# 4.5 动态导入表达式

# 第 5 章.快速创建 Typescript 项目

# 5.1 在 Node.js 中使用 Typescript

# 5.2 在浏览器中使用 Typescript

# 5.3 创建一个 Typescript 模块

# 第 6 章.TypeScript 类型系统

# 6.1 概览

# 6.2 从 JavaScript 迁移

# 6.3 @types

# 6.4 环境声明

# 6.5 接口

# 6.6 枚举

# 6.7 lib.d.ts

# 6.8 函数

# 6.9 可调用的

# 6.10 类型断言

# 6.11 Freshness

# 6.12 类型保护

# 6.13 字面量类型

# 6.14 readonly

# 6.15 泛型

# 6.16 类型推断

# 6.17 类型兼容性

# 6.18 never

# 6.19 辨析联合类型

# 6.20 索引签名

# 6.21 类型移动

# 6.22 异常处理

# 6.23 混合

# 6.24 ThisType

# 第 7 章.关于 JSX

# 7.1 React JSX

# 7.2 非 React JSX

# 第 8 章.TypeScript 编译选项设置

# 8.1 boolean 选项

# 8.2 noImplicitAny

# 8.3 strictNullChecks

# 第 9 章.Typescript 错误提示

# 9.1 解读错误

# 9.2 常见的错误

# 第 10 章.开发与测试工具

# 10.1 npm

# 10.2 在 Jest 中使用 TypeScript

# 10.3 Prettier

# 10.4 Husky

# 10.5 ESlint

# 10.6 Changelog

# 第 11 章.提示与建议

# 11.1 名义化类型

# 11.2 状态函数

# 11.3 柯里化

# 11.4 泛型的实例化类型

# 11.5 对象字面量的惰性初始化

# 11.6 类是有用的

# 11.7 默认导出被认为是有害的

# 11.8 减少 setter 属性的使用

# 11.9 谨慎使用--outFile

# 11.10 TypeScript 中的静态构造函数

# 11.11 单例模式

# 11.12 函数参数

# 11.13 Truthy

# 11.14 构建切换

# 11.15 创建数组

# 11.16 类型安全的 Event Emitter

# 11.17 Reflect Metadata

# 11.18 协变与逆变

# 第 12 章.TypeScript 代码风格指南与代码约定

# 12.1 变量和函数

# 12.2 类

# 12.3 接口

# 12.4 类型别名

# 12.5 命名空间

# 12.6 枚举类型

# 12.7 null 和 undefined

# 12.8 格式化

# 第 13 章.TypeScript 编译原理

# 13.1 编译器

# 13.2 程序

# 13.3 抽象语法数 AST

# 13.4 扫描器

# 13.5 解析器

# 13.6 绑定器

# 13.7 检查器

# 13.8 发射器

最近更新时间: 8/29/2020, 11:31:32 PM