1. JS中的||符号
a||b (a逻辑或b)
- 1.只要a为真,不管后面b的值是多少,结果返回都是a
// 1||2打印值为1
console.log(1||2)
// true||2打印值为true
console.log(true||2)
- 2.只要a为假,不管后面b的值是多少,结果返回都是b
// 0||2打印值为2
console.log(0||2)
// false||2打印值为2
console.log(false||2)
2. JS中的&&符号
a&&b (a逻辑与b)
- 1.只要a为真,不管后面b的值是多少,结果返回都是b
// 1&&2打印值为2
console.log(1&&2)
// true||2打印值为true
console.log(true||2)
- 2.只要a为假,不管后面b的值是多少,结果返回都是a
// 0||2打印值为2
console.log(0||2)
// false||打印值为2
console.log(false||2)
Tip:
所以大家在实际操作中或遇到如下类似代码时,要清楚表达的意思 ,切记是两个符号,不是位或(|)或者位与(&)
// 当b值或者表达式为真时,将b赋值给a;当b值或者表达式为假时,将c赋值给a
let a = b||c
console.log(12 || 5); //返回值12
console.log(12 && 5); //返回值5
// 12 和 5 进行位与运算,则返回值为 4
console.log(12 & 5); //返回值4
// 12 和 5 进行位或运算,则返回值为 13
console.log(12 | 5); //返回值13