js 的null 和 undefined
在 JavaScript 中,null
和 undefined
都表示没有值,但它们的使用情况略有不同。
null
表示一个被明确赋值为“空”的值。它可以用来重置变量或对象属性的值,以明确表达它们的空值状态。例如:
let x = null; // 将 x 显式地赋值为 null
相比之下,undefined
表示一个未被赋值的值。如果变量没有被赋值,那么它的值就是 undefined
。例如:
let x; // 声明变量但未赋值,x 的值为 undefined
也可以将一个变量赋值为 undefined
,但这通常没有必要,因为 JavaScript 会自动将未赋值的变量初始化为 undefined
。
需要注意的是,null
和 undefined
在布尔上下文中的行为不同。在布尔上下文中,null
被认为是“假值”,而 undefined
被视为未定义,也是“假值”。因此,如果要检查一个变量是否为 null
或 undefined
,可以使用以下代码:
if (myVar === null) {
// myVar 的值为 null
}
if (typeof myVar === 'undefined') {
// myVar 未定义
}