typescript
extends
泛型约束
interface ValueWithLength {
length: number
}
// extends 用于约束T的类型
function logLength<T extends ValueWithLength>(arg: T): T {
console.log(arg.length)
return arg
}
ts条件判断
type ResultType = SomeType extends OtherType ? TrueType : FalseType
tskeyof and typeof
keyof
用对象的 key 生成 Union Typestypeof
计算变量的类型, js 的typeof
只能计算八种类型
注意
type Mapish = { [k: string]: boolean }
type M = keyof Mapish
// type M = string | number