JavaScriptにおけるundefinedとnullの違い
1070 ワード
JavaScriptにおけるundefinedとnullの違い
JavaScriptの二つの表現は「無」の値:undefinedとnullです.私は普段はnull用のものが多いだけです.undefinedはエラーの中でよく会います.この二つのデータの種類の違いについて詳しく比較してみます.
1.undefinedとnullはif文では自動的にfalseに変換され、等しい演算子は直接に二つを報告するのと同じです.
!null==undefined==true
2.nullは「対象がない」という意味です.そこには値があるべきではないです.典型的な使い方は:
(1)関数としてのパラメータは、この関数のパラメータがオブジェクトではないことを表します.
(2)対象のプロトタイプチェーンの終点とします.
(1)変数が宣言されていますが、割り当てがない場合はundefinedに等しいです.
(2)関数を呼び出した時に提供すべきパラメータが提供されていません.このパラメータはundefinedに等しいです.
(3)オブジェクトには、属性が割り当てられていません.この属性の値はundefinedです.
(4)関数の戻り値がない場合、デフォルトはundefinedに戻ります.
JavaScriptの二つの表現は「無」の値:undefinedとnullです.私は普段はnull用のものが多いだけです.undefinedはエラーの中でよく会います.この二つのデータの種類の違いについて詳しく比較してみます.
1.undefinedとnullはif文では自動的にfalseに変換され、等しい演算子は直接に二つを報告するのと同じです.
!null==undefined==true
2.nullは「対象がない」という意味です.そこには値があるべきではないです.典型的な使い方は:
(1)関数としてのパラメータは、この関数のパラメータがオブジェクトではないことを表します.
(2)対象のプロトタイプチェーンの終点とします.
Object.getPrototypeOf(Object.prototype) // null
undefinedは「値が足りない」という意味です.ここには値があるはずですが、まだ定義されていません.典型的な使い方は:(1)変数が宣言されていますが、割り当てがない場合はundefinedに等しいです.
(2)関数を呼び出した時に提供すべきパラメータが提供されていません.このパラメータはundefinedに等しいです.
(3)オブジェクトには、属性が割り当てられていません.この属性の値はundefinedです.
(4)関数の戻り値がない場合、デフォルトはundefinedに戻ります.
var i;
i // undefined
function f(x){console.log(x)}
f() // undefined
var o = new Object();
o.p // undefined
var x = f();
x // undefined
読んでくれてありがとうございます.みなさんのご協力をお願いします.ありがとうございます.