逻辑运算符
逻辑运算符是对操作数进行布尔算术运算,经常和关系运算符一起使用。
逻辑与(&&)
只有在两个操作数执行结果都为真值的情况下,才返回真值:
x ==0 && y == 0
关系运算符优先级比比较运算符高,所以无需补充圆括号。
此外需要注意的一点是,如果左侧操作数的值是假值,则直接将其返回,如果左侧操作数是真值,则计算右侧操作数并将其返回,而不是简单返回 true
或 false
:
了解这一特性对于右操作数依赖左操作数结果的情况要注意,避免异常情况出现。
逻辑或(||)
如果两个操作数其中一个操作数为真值就返回真值:
p = p || {}
和逻辑与一样,当左操作数为真值的时候,直接返回做操作数执行结果,否则返回右操作数执行结果。
逻辑非(!)
「!」是一元运算符,位于操作数之前,作用是将操作数的布尔值求反。与前面两个逻辑运算符不同,该运算符首先将操作数转换为布尔值,再对布尔值求反,所以总是返回 true
或 false
,并且可以通过两次求反获取自身:!!x
。
No Comments