type-challenge 7日目(その2): 533-Concat
問題 & 解答
JavaScriptのArray.concatを型システムで構成する。
Variadic Tuple Typesを使って次のように定義する
type Concat<T extends any[], U extends any[]> = [...T, ...U]調べたこと
Variadic Tuple Types
- タプル型の中でに
...Tと書ける機能 ...で展開される方はextends readonly any[]を満たす必要がある。- ちなみにVariadicは「可変長引数」
TypeScript: Documentation - TypeScript 4.0
感想
Variadic Tuple Typesという名前がわからないまま、「こんな感じにできそうかな」と思ったら通ってしまいました。 TypeScript難しい…