在 JavaScript 中,null 和 undefined 是兩個特殊的值,用于表示缺少值或未定義的情況,但它們有一些區別。
1. undefined:undefined 表示一個變量已經聲明但尚未被賦值,或者一個對象屬性存在但沒有被賦值。當你聲明一個變量但沒有給它賦值時,它的默認值就是 undefined。例如:
javascript
let x;
console.log(x); // 輸出 undefined
2. null:null 表示一個變量或對象屬性被明確地賦值為一個空值(null)。它表示變量或屬性的值為空。你可以將 null 分配給一個已經定義的變量,使其變為空值。例如:
javascript
let y = null;
console.log(y); // 輸出 null
3. 類型:undefined 是一個數據類型為 undefined 的特殊值,而 null 是一個數據類型為 object 的特殊值。
4. 轉換:在類型轉換時,null 會被轉換為 false,而 undefined 在某些情況下會被轉換為 NaN(Not a Number)。
5. 使用場景:undefined 通常表示某個值尚未定義,而 null 通常表示某個值為空。
總的來說,null 表示一個變量被明確賦值為空,而 undefined 表示一個變量尚未被賦值。在實際使用中,你可以根據具體的需求選擇使用哪個值。