// 执行或运算符时,前面只要有一个表达式为true,就直接得出结果,不会再往后执行。
let s1 = 0 || 5 || 8;
console.log(s1); // 输出"5"。执行到5时发现为true,所以不会再往后执行,结果为5。
let s2 = 0 || 0 || 6;
console.log(s2); // 输出"6"。执行到6时发现为true,所以不会再往后执行,结果为6。
let s3 = 0 || 0 || 0;
console.log(s3); // 输出"0"。执行到最后一个0时发现没有true,后面也没有表达式可判断了,所以结果为最后一个0。
// 执行与运算符时,前面只要有一个表达式为false,就直接得出结果,不会再往后执行。
let w1 = 5 && 4 && 7;
console.log(w1); // 输出"7"。执行到最后一个7时发现没有false,后面也没有表达式可判断了,所以结果为7。
let w2 = 5 && 0 && 8;
console.log(w2); // 输出"0"。执行到0时发现为false,所以不会再往后执行,结果为0。
// 执行非运算时,任何数据都会转化为Boolean类型,然后取反。
let t1 = !8;
console.log(t1); // 输出"false"。
let t2 = !0;
console.log(t2); // 输出"true"。
// 使用上述方法给变量赋值时,一定要注意值的顺序。
JavaScript中逻辑运算符的另一种使用方式
最新推荐文章于 2024-05-24 23:45:01 发布