1. MDN Web 文档术语表:Web 相关术语的定义
  2. 假值

此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

假值

假值(falsy,有时写为 falsey)是在布尔上下文中认定为 false 的值。

JavaScript 在需要用到布尔类型值的上下文中使用类型转换将值转换为布尔值,例如条件语句循环语句

下列表格提供了 JavaScript 的所有假值。

类型 描述
null Null 关键词 null — 任何值的缺失
undefined Undefined undefined — 原始类型值
false Boolean 关键字 false
NaN Number NaN — 不是一个数字
0 Number Number 零,也包括 0.00x0 等。
-0 Number Number 负的零,也包括 -0.0-0x0 等。
0n BigInt BigInt 零,也包括 0x0n 等。需要注意没有 BigInt 负的零 —— 0n 的相反数还是 0n
"" String 字符串值,也包括 ''``
document.all Object 唯一具有假值的 JavaScript 对象是内置的 document.all

nullundefined 也都是空值

示例

JavaScript 中值的例子(在布尔值上下文中被转换为 false,从而绕过if 代码块):

js
if (false) {
 // 执行不到这里
}
if (null) {
 // 执行不到这里
}
if (undefined) {
 // 执行不到这里
}
if (0) {
 // 执行不到这里
}
if (-0) {
 // 执行不到这里
}
if (0n) {
 // 执行不到这里
}
if (NaN) {
 // 执行不到这里
}
if ("") {
 // 执行不到这里
}

逻辑与操作符 &&

如果第一个对象是假值,则返回那个对象:

js
console.log(false && "dog");
// ↪ false
console.log(0 && "dog");
// ↪ 0

参见

Help improve MDN

Learn how to contribute

This page was last modified on by MDN contributors.

AltStyle によって変換されたページ (->オリジナル) /