MST

星途 面试题库

面试题:TypeScript接口在泛型与条件类型中的深度应用

创建一个泛型接口`Mapper`,它接受两个类型参数`T`和`U`。该接口定义一个函数类型,此函数接受类型为`T`的数组,并返回类型为`U`的数组。接着,利用条件类型,创建一个类型别名`StringifyMapper`,它基于`Mapper`,将输入数组中的每个元素转换为字符串类型。例如,如果输入是`number`类型数组,输出是`string`类型数组。请完整实现上述接口和类型别名,并通过示例代码展示其使用。
49.9万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
// 创建泛型接口Mapper
interface Mapper<T, U> {
    (arr: T[]): U[];
}

// 创建类型别名StringifyMapper
type StringifyMapper<T> = Mapper<T, string>;

// 示例实现
const numberToStringMapper: StringifyMapper<number> = (nums) => nums.map(num => num.toString());
const result = numberToStringMapper([1, 2, 3]);
console.log(result);