在JavaScript中,以下值被认为是假值(false values):
- false:布尔值 false
- 0:数值 0
- -0:数值 -0
- 0n:BigInt 值 0n
- “”:空字符串
- null:一个空对象引用
- undefined:未定义的变量或属性
- NaN:非数值
这些值在布尔上下文中被视为假,即它们都可以被视为 false 表达式的值。其他所有值在布尔上下文中都被视为真值(true values)。在编写条件表达式时,了解这些假值是非常重要的。例如,以下代码将会执行 if 语句块:
if (0) {
// 这里的代码不会被执行
}
if ("") {
// 这里的代码不会被执行
}
if (null) {
// 这里的代码不会被执行
}
if (undefined) {
// 这里的代码不会被执行
}
if (NaN) {
// 这里的代码不会被执行
}