问题导向
boolean布尔值是什么?如何使用?
如果你都有了答案,可以忽略本文章,或去JS学习地图寻找更多答案
boolean布尔值
在JS中,使用true和false这两个关键字来表示真与假,用来判断是与非,常用于条件判断
进入条件
if(true){
console.log('进入条件')
}
不进入条件
if(false){
console.log('该代码不会执行')
}
对象写法
const boolean = new Boolean(true)
console.log(typeof boolean) //Object
console.log(boolean.valueOf()) //true
if(boolean){
console.log('进入条件')
}
6个falsy值:重要
除了false外,另外还有几个是假值,以下6个类假值(都不会进入条件),其他都是类真值:
undefined, null, 0, false, '', NaN
''是空字符串
布尔值与逻辑运算符结合使用
与/并且:前面为真,后面才执行
false && 'tom' // 不会执行,没有结果,因为前面为false,后面不会执行
true && false // false
true && 'hi' // hi 非空字符串为类真值
true && 'hi' && 1 // 1 默认展示最后一个类真值
或者,前面存在,就用前面,否则用后面
true || 'tom' // true
false || true // true
false || 'tom' // 'tom',非空字符串,是类真值,有一个值为真,结果就为真,所以'tom'被返回
false || 1 // 1
false || 1 || 2 // 1,就近原则,优先执行前面的
非,取反:将该值置换为反面,如true置换为false
例子一:
let number = 0
number = !number //0是类假值,将它取反,变为真
console.log(number) //true
例子二:双重取反,用于特殊场景
let number = 0
number = !!number //0是类假值,先转成布尔值true,再取反转成false
console.log(number) //false
学习更多