JavaScript逻辑运算符

Posted nyw1983

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript逻辑运算符相关的知识,希望对你有一定的参考价值。

JavaScript中有三种逻辑运算符:

非(!)、与(&&)、或(||)

一 :!非

!可以用来对一个值进行非运算

(一)、对布尔值进行!非运算

所谓非运算就是一个布尔值进行取反操作。

1、一次运算true变false,false变true

技术图片技术图片

2、如果对一个值进行两次取反,值不会变化。

 技术图片技术图片

 对非布尔值进行取反操作,现将非布尔值变成布尔值。所以我们可以利用这个特点将其他类型的值转换成布尔值。

可以对任意一个值进行两次非运算(取反),即可将其转换为Boolean类型;

原理和使用Boolean()函数一样

技术图片技术图片

 (二)、对非布尔值进行!或运算

运算规则:如果两个值都为true,则返回后面的值。

如果两个值都是false,则返回前面的false。

 

 二、&&与

&&可以对符号两侧的值进行“与运算”,并返回结果。

(一)、对布尔值进行与运算

运算规则:

1、只有符号两边同时为 true,结果就返回 true;

技术图片技术图片/2

2、只要有一个值是false,结果就返回false;

技术图片技术图片

JS中的与属于短路的与,如果第一个值为false,则不会看第二个值  (因为已经可以看得出结果了)。/3

3、第一个值为true,会检查第二个值。

技术图片技术图片/4

4、第一个值是false,就不会检查第二个值。

技术图片

  (二)、对非布尔值进行&&与运算

如果第一个值为true,则返回第二个值

如果第二个值为false,则直接返回第一个值(返回的是原值)。

 

三、|| 或

|| 可以对符号两边的值进行或运算并返回结果。

(一)、对布尔值进行或运算

运算规则:

两个都是false,就返回false

主要有一个true,就返回true

JS中的“或”属于短路的或,

如果第一个值为true,则不会检查第二个。

只有第一个值为false,才会检查第二个。

(二)、对非布尔值进行 || 或运算

运算规则:如果第一个值是true,则直接返回第一个值;

如果第一个值是false,则直接返回第二个值;(无论第二个值是什么)

 

以上是关于JavaScript逻辑运算符的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript逻辑not运算符详解

JavaScript比较和逻辑运算符

JavaScript中逻辑运算符的使用

JavaScript逻辑and运算符详解

JavaScript到精髓JavaScript 逻辑运算符

JavaScript中逻辑运算符的使用