TL;DR
戻り値として自分自身を返す関数。自分を呼び出した結果ではなく、関数そのものを返す。その名のとおり、何度でも呼び出せる。
例
TypeScript では、型も再帰的に定義する。
type HungryFunc = (x: number) => HungryFunc
const hungryFunc = (x: number) => hungryFunchungryFunc(0)(1)(2) のように、続けていくらでも呼び出せる。
関連
- 再帰関数
- 高階関数
戻り値として自分自身を返す関数。自分を呼び出した結果ではなく、関数そのものを返す。その名のとおり、何度でも呼び出せる。
TypeScript では、型も再帰的に定義する。
type HungryFunc = (x: number) => HungryFunc
const hungryFunc = (x: number) => hungryFunchungryFunc(0)(1)(2) のように、続けていくらでも呼び出せる。