购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.3.5 逻辑运算符

逻辑运算符可以把两个或多个表达式连接成一个表达式,或使表达式的逻辑反转。JavaScript逻辑运算符如表2-10所示。

表2-10 逻辑运算符

1.&&

“&&”运算符执行与运算,遵循以下两条规则:

(1)如果“&&”运算符左边的表达式为true或代表真的值,将继续进行右边表达式的计算,最终返回右边表达式的值。

(2)如果“&&”运算符左边的表达式为false或代表假的值,将不会进行右边表达式的计算,最终返回左边表达式的值。该规则也称为“短路”规则。

【例2-3】“&&”运算符

例2-3在Chrome浏览器控制台中的输出结果如图2-6所示。由输出结果可知,逻辑与表达式的值既可以是布尔值,也可以不是布尔值。如果第一个表达式的值为真,则返回第二个表达式的值;如果第一个表达式的值为假,则返回第一个表达式的值。

图2-6 例2-3的输出结果

提示: JavaScript程序中表达“1<x<9”的逻辑关系时,应写作“1<x && x<9”。“1<x<9”相当于“var temp=1<x; temp<9;”,其中“1<x”的返回值是true或false,“temp<9”中的比较运算符“<”会将布尔型temp转换为数字和9比较,true转换为1,false转换为0,因此无论x是多少,“temp < 9”恒成立,因此“1<x<9”返回结果始终都是true。

2.||

“||”运算符执行或运算,遵循以下两条规则:

(1)如果“||”运算符左边的表达式为false或代表假的值,将继续进行右边表达式的计算,最终返回右边表达式的值。

(2)如果“||”运算符左边的表达式为true或代表真的值,将不会进行右边表达式的计算,最终返回左边表达式的值。

【例2-4】“||”运算符

例2-4在Chrome浏览器控制台中的输出结果如图2-7所示。由输出结果可知,逻辑或表达式的值既可以是布尔值,也可以不是布尔值。如果第一个表达式的值为真,则返回第一个表达式的值;如果第一个表达式的值为假,则返回第二个表达式的值。

图2-7 例2-4的输出结果

3.!

“!”运算符执行取反运算,遵循以下两条规则:

(1)“!”运算符的操作数只有一个。

(2)“!”运算符在执行运算时,首先将操作数转换为布尔值,然后对布尔值取反,返回true或false。示例如下: DqOOv1rnSrDAD2lu5L/s5eiiXxENnMXiH1VQVHuyJVYWOlSm1L47/vvK+Loh0xED

点击中间区域
呼出菜单
上一章
目录
下一章
×