/

JavaScript 中的 null 和 undefined 有什麼不同?

JavaScript 中的 null 和 undefined 有什麼不同?

讓我們先談談它們的相似之處。

nullundefined 都是 JavaScript 的原始類型。

undefined 的意思是變數已聲明,但尚未賦值。

1
let age // age 是 undefined
1
let age = null // age 是 null

注意:訪問尚未聲明的變數會引發 ReferenceError: <variable> is not defined 錯誤,但這並不意味著它是 undefined

如何檢查變數是否為 null?使用比較運算符,例如 age === null

對於 undefined 也是一樣:age === undefined

在這兩種情況下,你都可以進行檢查:

1
2
3
if (!age) {

}

這將同時匹配 nullundefined

你也可以使用 typeof 運算符:

1
2
let age
typeof age //'undefined'

儘管 null 被評估為一個對象,但它實際上是一個原始類型:

1
2
let age = null
typeof age //'object'

tags: [“JavaScript”, “null”, “undefined”]