logoProsperBao

元组转合集

Mar 24, 2022

题目来源(type-challenges)

问题

实现泛型TupleToUnion<T>,它返回元组所有值的合集。

例如

type Arr = ['1', '2', '3']

type Test = TupleToUnion<Arr> // expected to be '1' | '2' | '3'

解答

type TupleToUnion<T extends any[]> = T[number]

拆分

  1. 根据题意限制 T 的类型为数组
  2. T[number] 是签名索引,可通过属性或者属性类型推断出数据类型 Indexed Access Types
>
CC BY-NC-SA 4.0 2021-PRESENT © Prosper Bao