JavaScript 中的 Truthy 和 Falsy 概念解析

作者:拾光时间:2026-10-28 19:10:50浏览:322

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."
}
作者最新文章