# 定义

条件类型,条件类型冒号左边为 if 右边为 else

# 使用

type If<T, K> = T extends K ? true : false;

type IfValue<T extends boolean, K, L> = T extends true ? K : L;
1
2
3

# 快来耍耍啊

# 🌰🌰

type A = { name: string }
type B = { name: string; age?: number | string }

type x = If<A, B>

type xA = IfValue<true, A, B>
type xB = IfValue<false, A, B>

1
2
3
4
5
6
7
8

Go Demo (opens new window)

# 游乐场


# 参考答案

// answer
1

# 参考资料