javascript中 Null和Undefined 的區別

NUll:

 null 是 js 中的關鍵字,表示空值. null 可以看做是 object 的一個特殊的值, 如果一個object值爲空,表示這個對象不是有效對象

Undefined:

undefined不是js 中的關鍵字, 其是一個全局變量. 是Global的一個屬性,以下情況會返回undefined:

 1) 使用是一個未定義的變量; var i;

  2) 使用了已定義但爲聲明的變量;

  3)  使用了一個對象屬性,但該屬性不存在或者未賦值

  4)  調用函數時,該提供的參數沒有提供:

function numb(aa){
   alert(aa);
};

numb(); //undefined

  5)  函數沒有返回值時,默認返回undefined

     

var bb = numb();
alert(bb);// Undefined

相同點:

都是原始類型的值,保存在棧中變量本地

兩者的區別:

      1.類型不一樣:

console.log(typeOf undefined);//undefined

console.log(typeOf null);//object

2.轉化爲值時不一樣:undefined爲NaN ,null爲0

console.log(Number(undefined));//NaN

console.log(Number(null));//0

3.  undefined===null;    //false       

Undefined 值是派生自 null 值

  undefined==null;  //true

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章