JS中的逻辑运算符&&和||
1.JS中的&&
只要"&&"前面为false,无论"&&"后面是true还是false,都返回"&&"前面的值;
只要"&&"前面为true,无论"&&"后面是true还是false,都返回"&&"后面的值。
console.log(false && true) //打印false
console.log(false && null) //打印false
console.log(true && 1) //打印1
console.log(true && false) //打印false
"&&"可以理解为获取表达式中的第一个false值对象,如果没有false值对象,则返回最后一个对象。
2.JS中的||
只要"||"前面为true,无论"||"后面是true还是false,都返回"||"前面的值;
只要"||"前面为false,无论"||"后面是true还是false,都返回"||"后面的值。
console.log(true || 1) //打印true
console.log(true || 0) //打印true
console.log(false || 1) //打印1
console.log(false || 0) //打印0
"||"可以理解为获取表达式中的第一个true值对象,如果没有true值对象,则返回最后一个对象。
3.JS中非bool对象的bool值
在JS的非bool对象中,只有null、undefined、""、NaN、0会被判定为false,其他的全部是true。
for (let i of [null, undefined, '', 0, NaN]) {
console.log(!!i) //全部打印false
}

浙公网安备 33010602011771号