MST
星途 面试题库
面试题:TypeScript条件类型结合泛型:复杂对象属性转换
给定一个TypeScript类型 `DeepPartial<T>`,它可以将对象类型 `T` 的所有属性及其子属性都变为可选。例如,对于类型 `{ a: { b: number } }`,`DeepPartial` 后的类型应为 `{ a?: { b?: number } }`。请实现这个 `DeepPartial` 类型。
46.4万 热度
难度
前端开发
TypeScript
知识考点
面试题答案
一键面试
type DeepPartial<T> = { [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P]; };