Javascript的逻辑运算符包括&&(and),||(or),!(not)。
一般我们用来跟if…else等判断语句结果使用。如
if (a && b) {
console.log('123');
}
为了使代码更简洁,我们可以使用逻辑运算符,把判断条件放在其左方,结果放在右方。将上面代码简化为:
(a && b) && (console.log('123'));
或
a && b && (console.log('123'));
注意右方的结果语句需要加上括号,不然会报错。
这两个代码的执行结果都是一样的,说明逻辑运算符是从左向右逐个运算的。这点常常在实际中被开发者忽略,须谨记。
有时候需要给一个变量在不同条件下赋予不同的值,这时也可以运用逻辑运算符来达到目的,且更简洁。
一般情况下的处理:
var a = 1;
if (new Date().getDay() === 1) {
a = 100;
}
运算逻辑运算符:
var a = new Date().getDay() === 1 && 100 || 1;
可能有个别开发者会怀疑得到的a值可能是true或者false这些布尔值,但实际去是能够得到100或者1的。这是因为逻辑运算符产生的结果并不全是布尔值,而是最后能到达的那个值。
下面我们看看示例,就明白了。打开chrome控制台,输入以下运算,得到答案。
// 2
true && 1 && 2
// 1
1 || 3
// 3
false || 3
// true
true || 2
// false
false && 6
感谢您的阅读!
如果看完后有任何疑问,欢迎拍砖。
欢迎转载,转载请注明出处:http://www.yangrunwei.com/a/27.html
邮箱:glowrypauky@gmail.com
QQ: 892413924