infer
与 extends
和三元运算符组合使用,用于推断某个复杂类型的部分,简单的说,就是用来推导泛型参数
。
使用规则
type ParamsArray<T> = T extends Array<infer P> ? P : T;
inter
只能出现在 extends
关键字的右侧;
inter P
可以理解成数学上的未知数 x
;
- 其中
extends
关键字的作用,是用来判断 右边的类型 是否兼容 左边的泛型 T
,如果兼容则返回 ?
后面的内容,否则返回 :
后面的内容。
示例一:
type ParamsArray<T> = T extends