显示转换与隐式转换
为了加深对Boolean的语法理解,我们先回忆一下JavaScript中的显示与隐私转换
显示转换
显示转换是指通过明确的代码,主动江一中数据类型转换为另一种类型,这种方式通常是直观的,可控的。
常见方法:
- 使用构造函数:String(),Number(),Boolean()等
- 使用特定方法:如toString(),parseInt()等
// 转换为字符串
const num = 42;
const str = String(num); // "42"
const str2 = num.toString(); // "42"
// 转换为数字
const strNum = "123";
const num2 = Number(strNum); // 123
// 转换为布尔值
const val = 0;
const bool = Boolean(val); // false
隐式转换
在JavaScript中,所有的值都可以被隐式转换为布尔值,在这种转换中,值会被分类为“真值”或“假值”。
假值(falsy):在转换为布尔值时被视为false的值,包括:
- false
- 0 (数字零)
- -0 (负零)
- “”(空字符串)
- null
- undefined
- NaN (非数字)
真值(truthy):除了上述假值外,所有其他值在转换为布尔值时都会被视为true。
在条件判断if和逻辑运算中,所有的值都会被进行隐式转换,如:
// if中的0被视为false
if(0){
}
// if中的1被视为tru