ts技巧

TypeScript 怎么上手?

可以先在这里试水 TypeScript 在线尝试 这里有些例子可以初步让你从 js 过渡到 ts,这些例子也基本覆盖了常用的一些操作
怎么深入? 其他 ts 文档

我为什么使用 ts

我用 typescript 的着重点在于
1
可以在不用去看详细代码的情况下基本确定一个函数该传哪些参数,可以得到哪些返回值。也即是 typescript 很好的体现了代码即文档这一思想 原来使用 js 想要达到这样的境界需要编写详细的 jsdoc 以后每次更新也都需要修订 jsdoc 颇为繁琐。
2
js 本身的动态性就决定了无法得到 IDE 的支援,而 ts 却可以得到 IDE 最顶尖的代码提示与校验,可以防范低级错误发生的频率
3
ts 可以减慢项目的混乱程度的增加速度
4
实际上完善的类型推导和类型定义是能够加速项目开发并且减少返工次数,也能够提高对自己代码的信心

typescript 内置的 一些实用类型

typescript 实用类型

获取只读属性或者可写属性
ts
type IfEquals = (() => T extends X ? 1 : 2) extends (() => T extends Y ? 1 : 2) ? A : B; type WritableKeys = { [P in keyof T]-?: IfEquals<{ [Q in P]: T[P] }, { -readonly [Q in P]: T[P] }, P> }[keyof T]; type ReadonlyKeys = { [P in keyof T]-?: IfEquals<{ [Q in P]: T[P] }, { -readonly [Q in P]: T[P] }, never, P> }[keyof T];

实战技巧

资源

深入理解 TypeScript
typescript 中文手册