Null 和 undefined 的區別
阿新 • • 發佈:2018-04-20
調用函數 undefined code 沒有 pan typeof === 表示 console
null 表示一個值被定義了,定義為“空值”
undefined 表示根本不存在定義。
1:
所以設置一個值為null 是合理的, obj.value = null; 正確
設置一個值為undefined是不合理的 obj.value = undefined; 錯誤
2:
null預定義為一個object 值為空。 undefined預定義為全局變量,值為undefined。
1 typeof null; //object 2 typeof undefined; // undefined
3:
轉義
1 !!(null);//false 2 !!(undefined);//false 3 Number(null);// 0 4 Number(undefined);// NaN 5 null == undefined; // true 6 null === undefined; // false
4:
判定
1 isNull = function (obj){ return obj === null;} 2 isUndefined = function(obj){ return obj === void 0;}
5:
用法
5.1
1 null 常用來定義一個空值 2 3 undefined : 4 5.1變量聲明了未賦值 5 var test; 6 console.log(test);// undefined7 8 5.2 調用函數時,沒提供應該提供的參數,參數為undefined 9 function(lists){...}// lists 未提供 10 11 5.3 對象沒有賦值的屬性,該屬性為undefined 12 var test={}; 13 console.log(test.aaa);//undefined 14 5.4 函數沒有返回值時,返回undefined 15 function test(){} 16 test();//undefined
Null 和 undefined 的區別