# 获取可选属性键值
# 题目描述
实现高级 util 类型OptionalKeys<T>,该类型将 T 中所有可选属性的键合并为一个联合类型。
# 分析
之前已经讨论过获取可选属性,那么这题只需要把属性值取出来即可
# 题解
type OptionalKeys<T> = keyof {
[P in keyof T as T[P] extends Required<T>[P] ? never : P]: any;
};
# 知识点
- keyof
← 困难 获取必填属性键值 困难 大写首字母 →