😺
TypeChallengesに入門する
concat.ts
type Concat<T, U> = any
myAnswer.ts
type Concat<T extends Array<unknown>, U> = U extends Array<unknown> ? [...T, ...U] : [...T, U]
答えを確認したところ、U extends Array<unknown>
にしている人が大多数でした。
###質問
JavaScript のArray.concat
関数を型システムに実装します。この型は 2 つの引数を受け取り、受け取ったイテレータの要素を順に含む新しい配列を返します。
ってことはイテレータの要素以外は入る想定じゃないってことですかね。
myAnswer.ts
type Concat<T extends Array<unknown>, U extends Array<unknown>> = [...T, ...U]
...どっちでもいいんですかね?
Discussion