前端 TypeScript 面试题, TypeScript 的内置工具类型 Parameters 有什么作用?
前端 TypeScript 面试题, TypeScript 的内置工具类型 Parameters 有什么作用?
QA
Step 1
Q:: TypeScript 的内置工具类型 Parameters 有什么作用?
A:: TypeScript 的 Parameters<T>
是一个内置的工具类型,用于提取函数类型 T 的参数类型并生成一个元组类型。举个例子,假设有一个函数类型 type MyFunction = (a: string, b: number) => void;
,使用 Parameters<MyFunction>
得到的类型将是 [string, number]
。这个工具类型非常有用,尤其是在需要基于已有函数类型来创建新的类型时。
Step 2
Q:: TypeScript 的内置工具类型 ReturnType 有什么作用?
A:: TypeScript 的 ReturnType<T>
是一个工具类型,它接受一个函数类型 T,并返回其返回值类型。例如,type MyFunction = () => string;
,使用 ReturnType<MyFunction>
将会返回 string
类型。这在需要提取函数返回类型时非常有用。
Step 3
Q:: 如何使用 TypeScript 的内置工具类型 Pick?
A:: Pick<T, K>
是 TypeScript 提供的一个工具类型,用于从类型 T 中选择一组属性 K(它是字符串字面量的联合类型),并返回一个新的类型。例如,type MyType = { a: string; b: number; c: boolean; }
使用 Pick<MyType, 'a' | 'b'>
将会得到 { a: string; b: number; }
。这在需要从复杂类型中挑选出部分属性时非常有用。
Step 4
Q:: TypeScript 的 Partial 工具类型有什么作用?
A:: Partial<T>
是 TypeScript 提供的一个工具类型,用于将类型 T 中的所有属性都变为可选属性。举个例子,假设有一个类型 type MyType = { a: string; b: number; }
,使用 Partial<MyType>
将会得到 { a?: string; b?: number; }
。Partial 非常适合在对象的某些属性不确定时使用。