|
|
其实TypeScript并不是一门新的语言,它是 JavaScript 的超集。它最大的亮点,就是其无可替代的强类型系统,这也是它为什么叫 TypeScript 的原因。之所以说它的类型系统无可替代,是因为TypeScript 填充了 JavaScript 作为一门动态弱类型脚本语言的缺点,多了静态类型检查, 能够对代码中的错误及时反馈,而又保留了JavaScript 的灵活,维护大型工程项目更加轻松。
4 Z! X& J& Q; N! _ W6 E5 k# ^5 o 现在最流行的三大主流前端框架,React 和 Angular 使用 TypeScript 编写,而 Vue3.0 则会使用TypeScript 重写;而 NodeJS 的模块很多都添加了类型声明,所以使用 TypeScript 可以很好地开发前后端和其他场景的项目。
: H) Q; `& R! }& K( O课程目录:7 S4 z4 @5 s4 c# A- x8 Q: d
第一章 入门准备
) A) X2 V$ a, a D' K: u: V4 p01 开篇词:Hello~TypeScript
% m5 v# s! Q( r02 TypeScript应该怎么学$ i6 y4 T( F4 x3 D* o) }" @+ G9 `
03 VSCode揭秘和搭建开发环境
}* ]4 S2 p$ ?: T! z第二章 基础部分* e0 p7 T7 H9 n* T8 A' c# X
04 八个JS中你见过的类型
( p7 j: W! W; ?# y# L05 TS中补充的六个类型# r6 w4 s! o( ]8 T
06 Symbol-ES6新基础类型
9 q, c1 J+ f/ ~# n$ A1 @07 深入学习枚举2 X4 u [. r5 ]/ Z/ Y6 \0 z
08 使用类型断言达到预期
2 w8 m, S6 [2 J! n0 [09 使用接口定义几乎任意结构. H. B) a0 T+ l7 y2 K
10 接口的高阶用法
% c3 R( m3 m2 z- o# ?* E* m11 为函数和函数参数定义类型9 ^ R& K- A, d
12 使用泛型拯救你的any
) L, i) |4 A' P8 w" ?7 h. d; ~13 TS中的类,小心它与ES标准的差异
: W R) E" ?. u9 g第三章 进阶部分) J7 N' @, B0 S
14 类型推论,看TS有多懂你9 }/ K5 T9 [8 e8 W6 ~
15 类型兼容性,开放心态满足灵活的JS' [' }6 H% q, M5 g
16 使用类型保护让TS更聪明
& \* G6 @9 s# }" U2 n! k17 使用显式复制断言给TS一个你一定会赋值的承诺
+ D/ X0 s; j. h: H18 类型别名和字面量类型—单调的类型
% N# R* C* b: t" ~' G3 ?1 I: k, V7 A19 使用可辨识联合并保证每个case都被处理! O1 O9 ^+ t) T9 m \6 O6 j
20 this,类型?
. |# l0 K- D1 Z21 索引类型:获取索引类型和索引值类型
J( M! V7 W. Z) c# _; P3 {) e22 使用映射类型得到新的类型5 c: X% |5 N4 @3 i& z, B2 M" L* L
23 前面跳过的unkown类型详解
* `6 S% W$ G, n6 m+ ?) V4 p24 条件类型,它不是三元操作符的写法吗?5 v- g J7 n1 t+ W# W h* l6 u
25 入手装饰器,给凡人添加超能力; |, j3 O* J6 Z7 M5 h* F
第四章 知识整合
; H1 T+ l3 N' h& ]26 使用模块封装代码0 c7 R; ^$ k6 ~
27 使用命名空间封装代码* i& s! w: P! B6 o5 @
28 对声明合并的爱与恨
. W5 k. u. i* W) X29 混入,兼顾值和类型的合并操作6 Z; C" t! s% Y- I' o2 [
30 Promise及其语法糖async和await
+ |2 A8 y/ x7 |4 L- I第五章 项目配置及书写声明文件
: `% p+ P" }. ~8 ~0 [! R& |- ]3 W5 N31 逐条来看tsconfig.json配置
, Y8 k# l5 X+ ~: V% D* g32 书写声明文件之磨刀:识别库类型
0 L% G; s D! N0 n33 书写声明文件之砍柴:为不同类型库书写声明文件" t, d# Y% Y! j+ ], Y9 ^: E9 ?- c
第六章 项目实战-TS+Vue实现一个简单后台+ _+ u% Q( n, q
34 搭建基础项目
/ c) ~1 Y$ g4 T0 H35 封装接口请求
, S* F) J3 W, m: k$ s9 A36 实现登录页并用Mock响应请求
9 j* l2 u7 G! Z. E( b37 搭建后台界面布局和结合Vuex实现完整登录流程! ?- [+ }; }: z1 k4 M
38 使用TypeScript开发Vue组件和使用Vue组件4 D" X& N; q: Y. y
第七章 写在最后4 B d; t( r! C5 ]6 K
39 结束语1 Q9 a1 w/ Q. w/ x) A
2 k7 |- L" G- A0 E: X) X c
% g: `1 ^ M+ X ]8 B9 G/ F
; O; \- f& `6 Z# q& I- d/ s# B4 H
|
|