JavaScriptにおけるundefinedとnullの違い

1070 ワード

JavaScriptにおけるundefinedとnullの違い
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

読んでくれてありがとうございます.みなさんのご協力をお願いします.ありがとうございます.