“||”和“&&”是布尔逻辑运算符中的逻辑或及逻辑与
1、只要“||”前面为false,无论“||”后面是true还是false,结果都返回“||”后面的值。
2、只要“||”前面为true,无论“||”后面是true还是false,结果都返回“||”前面的值。
3、只要“&&”前面是false,无论“&&”后面是true还是false,结果都将返“&&”前面的值;
4、只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返“&&”后面的值;
逻辑运算符,“||”和“&&”都是遵行短路原则,只要确定符号前面的真假,既可确定返回值。
下面的这个例子说明了布尔逻辑运算符的优点。
if(denom!=0 && num/denom>10)
如果该行代码使用标准AND运算符(&),它将对两个运算数都求值,当出现被0除的情况时,就会产生运行时错误。
需要说明的是“&&”的优先级是高于“||”的,下面测试:
alert(1||'a'&&2);
返回结果是1。