1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

JavaScript の undefinednull について、違いを解説している記事はいくつかありますが、具体的な使い分けには触れられないことが多いようです。

そこで、私が意識している 違い・使い分け を表にまとめてみました。 の部分には undefinednull が入ると思ってください。

undefined null
意味 変数・プロパティが未設定 が無効(利用可能な値がない)
変数: variable = … variable を未初期化の状態にする 1 variable が有効な値を持たないことを表す
プロパティ: object.prop = … object.prop の値をクリアする 1 2 object.prop が有効な値を持たないことを表す
関数の返り値: return … 3 関数から値を返さずに戻る 関数の結果として、無効な値を返す
関数の引数: func(…) 3 引数の省略を表す 引数として、無効な値を渡す 4

これが絶対というわけではありませんが、迷った時に参考にしてみてはいかがでしょうか。

  1. 「未初期化」であることが重要な場合以外は null を使うべき 2

  2. プロパティ自体を削除するには、delete object.prop を使う

  3. undefined の場合は、 の部分を空に(省略)する 2

  4. 引数が null という値を持つ点で、undefined とは異なる

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?