← 解説「null と undefined — strictNullChecks」に戻る
サンプルコードで身につける: null と undefined — strictNullChecks
解説で学んだ概念を、5つの具体例で確認します。素朴な例から実務寄りの例へと進みます。
1「無いかもしれない」を型に書く
「値が無い」状態を null で表す最も基本の形です。string | null とユニオン型で明示しておけば、「いまは無いが後で文字列が入る」変数を型がそのまま表現してくれます。
TypeScript
2null と undefined の違い
null は「無い」と意図的に入れる値、undefined は「まだ何も設定されていない」ことを表す値です。typeof の結果が違うことを確かめながら、2つの「無い」を区別する感覚をつかみましょう。
TypeScript
3見つからないかもしれない検索結果
検索やデータ取得は「見つからない」可能性が必ずあるので、戻り値を number | null のような型にするのが定番です。呼び出し側は null チェックを書かない限り値を使えないため、確認漏れをコンパイラが防いでくれます。
TypeScript
4フォーム入力のnull処理
フォームの入力値は「未入力」が null で届くことがあり、さらに空白だけの入力も実質「無し」として扱いたい場面が多いです。null を受け取り、整形して、だめなら null を返す関数で「無い」の扱いを1か所に集めます。
TypeScript
5APIレスポンスのnullフィールド
API のレスポンスでは「未登録の項目は null で返す」設計が広く使われています。interface のプロパティを string | null と宣言しておけば、null チェックをせずにメソッドを呼ぶコードをコンパイラが止めてくれます。
TypeScript