この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - TypeScript タイプパズル
32. implement RepeatString<T, C>
type RepeatString<T, C extends number> = C extends 0 ? '' : T extends string ? C extends 1 ? T : `${T}${RepeatString<T, C extends 0 ? never : C extends 1 ? 0 : C - 1>}` : never;
使用例:
type A = RepeatString<'a', 3> // 'aaa'type B = RepeatString<'a', 0> // ''type C = RepeatString<'abc', 2> // 'abcabc'
RepeatString<T, C>
は、T
という文字列をC
回繰り返した文字列を作成します。もしC
が0の場合は空文字列を返します。C
が負の場合は無視されます。T
が文字列型でない場合はエラーが発生します。