随笔分类 - ts
摘要:自定义类型保护,文档中说:一旦检查过类型,就能在之后的每个分支里清楚地知道 pet的类型的话就好了,但并未说哪种分支有效 亲测:if else 、while有效,switch无效 interface Bird { fly(); layEggs(); } interface Fish { swim()
阅读全文
摘要:never 永不存在的值得类型,不好理解,以实例为例: 函数返回never的函数必须存在无法到达的终点,更不好理解,这里并不是指没有返回值 而是指会抛出、返回错误或者无限循环 // 返回never的函数必须存在无法达到的终点 function error(message: string): neve
阅读全文
摘要:有时候需要一个类型,它依赖于上一个类型,但对属性的要求却不同,简而言之:从旧类型中创建新类型 这里需借助 映射属性 (不能用于interface,只能用于type!) 全转为readonly type Readonly<T> = { readonly [P in keyof T]: T[P]; }
阅读全文
摘要:简单写法 const data = { a: 3, hello: 'world' } function get(o: object, name: string) { return o[name] } 但这样写有两个问题 1、无法确认返回类型:这将损失 ts 最大的类型校验功能 2、无法对 key 做
阅读全文
摘要:总结自:https://stackoverflow.com/questions/37233735/typescript-interfaces-vs-types 1、都能用来描述对象与函数,只是写法不同 //对象interface Point { x: number; y: number; } //函
阅读全文