在JavaScript中,有一些值在布尔上下文中会被转换为false。这些值被称为“假值”(falsy values)。以下是JavaScript中的假值列表:
false:布尔值false本身。0:数字零。""或'':空字符串。null:表示一个空值或“无”的值。undefined:未定义的值。NaN:表示非数字的值(Not a Number)。
当在条件语句(如if语句)中使用这些值时,它们会被解释为false。例如:
if (0) { console.log("This will not be logged."); } if (null) { console.log("This will also not be logged."); }
在上述代码中,由于0和null是假值,所以console.log语句不会被执行。
相反,所有其他值(除了上述列出的假值)在布尔上下文中都会被转换为true,被称为“真值”(truthy values)。例如,任何非零数字、非空字符串、对象、数组等都被视为真值。