1あってもなくてもよいプロパティ
プロパティ名に ? を付けるだけで、そのプロパティを持たないオブジェクトも代入できるようになります。省略した場合に値が undefined になることも、出力して確かめてみましょう。
TypeScript
2undefined を確認してから使う
省略可能なプロパティは undefined の可能性があるため、使う前の確認が必要です。「設定されていれば使い、なければ別の文言にする」という、? と必ずセットになる基本パターンです。
TypeScript
3省略時にデフォルト値で補う設定オブジェクト
「指定がなければ既定値を使う」設定オブジェクトは、オプショナルプロパティの代表的な使い道です。ライブラリのオプション引数など、実務の設定値の受け取りはほぼこの形をしています。
TypeScript
4任意の検索条件で商品を絞り込む
検索条件のように「指定された項目だけ適用する」データもオプショナルプロパティで表現できます。条件ごとに undefined チェックを挟んで適用するのは、検索 API やフィルター UI の実装で定番の形です。
TypeScript
5配送先住所の任意項目をフォーマットする
建物名や配送メモのような「ある人だけ持つ」項目はオプショナルプロパティの典型です。複数の任意項目を順に確認しながら文字列を組み立てる、住所や帳票のフォーマット処理でよく出る形です。
TypeScript