← TypeScript コース
29. Partial と Required
Partial<T> は、型 T のすべてのプロパティを省略可能(? 付き)に変換するユーティリティ型です。逆に Required<T> は、すべてのプロパティを必須に変換します。
Partial の定番は「更新処理」です。記事の更新で title だけ、content だけを渡したいとき、引数を Partial<Article> にしておけば「変更したい項目だけ渡す」関数が自然に書けます。
元の型を書き換えるのではなく、既存の型から新しい型をその場で作るのがユーティリティ型の考え方です。元の Article はそのまま、必要な場面でだけ緩い型・厳しい型を派生させます。
▶ サンプルコードを実行してみよう(自由に書き換えてOK)
TypeScript