← inaro.devAI駆動開発 学習ツール
中級

null / undefinedと安全な参照

なぜ学ぶか: 実行中のエラーで一番多いのが「undefinedのプロパティは読めません」。AIのコードに出てくる?.??!は、この事故に関わる記号です。まず3つを並べて見てみましょう。

まずはこの例を見てみましょう

// user は「User か null(空)」かもしれない値だとします

user?.name                 // あれば読む。なければエラーにせず undefined
user?.nickname ?? "ゲスト"  // 値が無ければ "ゲスト" を代わりに使う

user!.name                 // ! は「絶対ある」と言い張ってチェックを黙らせる(危険)

?.と??は「アプリを落とさない」安全な書き方。!は逆に、チェックを黙らせるだけの危険な書き方です。

?.=あれば読む、なければundefined

userが空でもエラーで落ちません。「undefinedのプロパティは読めません」という一番多い実行時エラーを防ぎます。

??=無ければ代わりの値

例のように「ニックネームが無ければゲストと表示」など、デフォルト値の定番です。

!=「絶対ある」という自己申告(危険)

検査はせず、チェックを黙らせるだけ。間違っていれば実行時に落ちます。AIのコードに!が多かったら疑いましょう。

ステップ 1 / 3

※ カリキュラムの内容はAIが生成しており、誤りが含まれる場合があります。正確な情報は公式ドキュメント等でご確認ください。