JavaScript 中的 Truthy 和 Falsy 概念解析

作者:拾光

时间:2026-10-28

浏览:321

JavaScript 在布尔上下文中对所有值进行隐式转换,分为 Truthy(真值)和 Falsy(假值)。Falsy 包括 false、undefined、null、0、NaN 和空字符串;其余如 Infinity、空数组和字符串 "0" 均为 Truthy。理解这一机制对编写健壮的逻辑判断至关重要。

文章目录

Truthy 与 Falsy 的基本概念

与多数编程语言类似,JavaScript 提供了 boolean 类型用于逻辑运算。但 JavaScript 的独特之处在于引入了 Truthy(真值)和 Falsy(假值)的概念:除了明确的 true 和 false 外,所有数据类型在逻辑判断中都会转换为布尔值,具体规则如下:

1. 所有 Falsy 值在逻辑判断中均被视为 false。这些值包括:false、undefined、null、+0、-0、NaN 以及空字符串 ""。 2. 除 Falsy 值外的所有其他值均为 Truthy,在逻辑判断中视为 true。需要特别注意,Infinity、空数组 [] 以及字符串 "0" 均属于 Truthy 值。

代码实验验证

实验验证


代码如下:

var x = "0";
if(x){
"string 0 is Truthy."
} else {
"string 0 is Falsy."
}
var y = [];
if(y){
 "empty array is Truthy."
} else {
 "empty array is Falsy."
}

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章