Upgrade to Pro — share decks privately, control downloads, hide ads and more …

JavaScriptのnullとundefinedの違い

 JavaScriptのnullとundefinedの違い

Kyoto Tech Talk #8
学生LT枠

Avatar for Retasusan

Retasusan

May 29, 2025
Tweet

Other Decks in Programming

Transcript

  1. 自己紹介 • @Retasusan ◦  @retasusan_510 • 普段は大学生 ◦ 最近レポートが苦しい… •

    Ruby on RailsとViteで アプリを作っている • 昨日クロスバイク購入 現実の姿 インターネットの姿
  2. そもそもnullとundefinedって何? • null ◦ プリミティブ型の一つ ◦ リテラル ◦ 代入すべき値が存在しないこと明示するときに使われがち? https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Operators/null

    • undefined ◦ プリミティブ型の一つ ◦ グローバルオブジェクトのプロパティ ◦ 値が代入されていない時とかに使われる? https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/undefined
  3. isNaN関数 • 引数なし(undefined), undefined ◦ true(NaN) • null ◦ false(数値)

    • 数値 + undefined ◦ true(NaN) • 数値 + null ◦ false(数値) • 数値 ◦ false(数値)
  4. isNaN関数(余談) • 真偽値と文字列の数値 ◦ false(数値になる) • NaN ◦ true •

    NaN === NaN ◦ false ◦ 等価演算子だと比較できないから isNaN関数がある
  5. Number関数 • 引数なし ◦ 0 • null ◦ 0 •

    undefined ◦ NaN • これがisNaN関数の中で動いてる
  6. JSON.stringify() • 通常のJSオブジェクト ◦ nullとundefinedを保持 • JSONオブジェクト ◦ undefinedは無効な値 ◦

    プロパティごと無視される • JSON配列 ◦ undefinedはnullに置換され る