JS逻辑运算符:与、或、非
发布者:梦之国
发布时间:2022-12-29
定义:
1、" 与 " && :运算规则:有假则假,JS中的”与”为短路与
2、”或 ”|| :运算规则:有真则真,JS中的”或”为短路或
3、”非”!:
定义:为一个布尔值进行取反
双非则把一个非布尔值转换为布尔值,并且不改变性质
注意:
- 短路与:如果第一个是false,则不会往后执行,直接返回false
- 短路或:如果第一个是true,则不会往后执行,直接返回true
代码演示:
<script>
var a = true;
a = !a;
console.log(a); // 结果:false
var b = true;
b = !!b;
console.log(b); //结果:true
var c = true, d = true;
var e = c && d;
console.log(e); // 结果:true
var f = true, g = false;
var h = f && g;
console.log(h); //结果:false
var I = false, j = false;
var k = I && j;
console.log(k); // 结果:false
var l = true, m = false;
var n = l || m;
console.log(n); // 结果:true
var o = true, p = true;
var q = o || p;
console.log(q); // 结果:true
var r = false, s = false;
var t = r || s;
console.log(t); // 结果:false
</script>
与、或非布尔值运算时:
先转换成布尔值,再进行运算,并返回原值
1、与运算规则:
第一个值为true时,直接返回第二个值
第一个值为false时,直接返回第一个值
2、或运算规则
第一个值为true时,直接返回第一个值
第一个值为false时,直接返回第二个值
代码演示:
<script>
var a = 12, b = 0, c;
c = a && b;
console.log(c); //结果:0
var d = NaN, e = 0, g;
g = d && e;
console.log(g); // 结果:NaN
var h = 'hello' , I = 0, j;
j = h || I;
console.log(j); //结果:"hello"
var l = 0, m = "hello",n;
n = l || m;
console.log(n); // 结果:"hello"
</script>
标签: JS逻辑运算符 与、或、非