1. 程式人生 > >Null 和 undefined 的區別

Null 和 undefined 的區別

調用函數 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);// undefined
7 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 的區別