Dev Study
TypeScript コース

14. 関数オーバーロード — 複数の呼び出し方を宣言する

関数オーバーロードは、1つの関数に複数の呼び出し方を持たせる仕組みです。引数と戻り値だけの宣言(オーバーロードシグネチャ)を上に並べ、最後にすべての呼び出し方を受け止められる実装を1つだけ書きます。

実務では「引数の個数や組み合わせで意味が変わる関数」に使います。姓だけでも姓名でも呼べる関数のように、呼び出し方ごとの正確な形を呼び出す側に見せたいとき、宣言を分けて書けるのが利点です。

つまずきポイントは実装シグネチャの扱いです。実装の引数は、すべての宣言を受け止められる形(オプション引数など)で書く必要があります。また、外から呼べるのは上に並べた宣言の形だけで、実装シグネチャそのものは呼び出しの候補になりません。

▶ サンプルコードを実行してみよう(自由に書き換えてOK)

TypeScript
サンプルコードで身につける(5本) →

学んだ概念を、素朴な例から実務寄りの例まで5つの具体例で確認します。

公式ドキュメントで詳しく ↗