MST

星途 面试题库

面试题:TypeScript复杂泛型约束的实现

编写一个泛型类 `Mapper`,它接受两个类型参数 `T` 和 `U`。`Mapper` 类有一个方法 `map`,该方法接受一个 `T` 类型的数组,并返回一个 `U` 类型的数组。通过泛型约束,确保 `U` 类型是 `T` 类型数组中每个元素经过特定转换函数处理后的类型。例如,`T` 是 `{ value: number }` 类型的数组,`U` 是 `number` 类型的数组,转换函数将 `{ value: number }` 中的 `value` 提取出来。
16.0万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
class Mapper<T, U> {
    map(arr: T[], transform: (item: T) => U): U[] {
        return arr.map(transform);
    }
}