逻辑运算符

逻辑运算符

逻辑运算符用于测定变量或值之间的逻辑。

在逻辑运算中,0、""、null、undifined、false、NaN都表示false;

在逻辑运算中,一切非 0 值都为真,例如-4、6、3.14都为真;

给定 x=6 以及 y=3,下表解释了逻辑运算符:

运算符    描述            例子
&&       and     (x < 10 && y > 1) 为 true
||       or      (x==5 || y==5) 为 false
!        not     !(x==y) 为 true

  

“与”(&&)

1.“&&”两侧的结果都为真,整个的结果才为真;

2.其它情况全为假;

3.无论运算逻辑多么复杂,只要结果只有真和假;

4.如果关系运算有一个为假了,那么后面的关系运算不再继续,这种现象称为短路现象;

5.每个关系运算符会返回一个结果,例如3<4,6>2,结果为boolean(true or false);

    var a1 = 3;
    var a2 = 4;

    a1 < a2 && a1++;     //结果为真,最终结果a1=4,a2=4
    

    var b1 = 3;
    var b2 = 4;

    b1 > b2 && b1++ ;     //结果为假,最终结果b1=3,b2=4

    var c1 = 3;
    var c2 = 4;
    var c3 = 1;

    c1<c2 && --c3 && c1++;     //结果为假,最终结果为c1=3,c2=4,c3=0,'--c3'结果为0所以结果为假,后面的运算关系不再继续,此称为短路现象

  

“或”(||)

1.“||”两边的运算结果只要一个为真,整个结果就为真;

2.当前面的运算结果有一个为真时,后面的运算不再进行;

3.不管运算逻辑有多么复杂,最终的结果只有“true” 或 “false”;

4.逻辑运算“或”的最终结果为运算结果为真的表达式的结果;

var a = 100;
var b = 1;
var c = b || ++a;     //最终结果c=1;

关于自加运算

1.自加 分为 a++ 和 ++a;

2.a++ 先赋值,后自加;

3.++a 先自加,后赋值;

var a = 100;
var b = 1; var c = a++; //结果为 c=100
var d = ++a; //结果为 d=101
var b += 2; //结果为 b = 3;

练习题

var a = 10;
 var b = (a++);     //最终的结果为 b = 10;

非(!)

var a = 1;
var b = !a;     //输出结果为false,1 代表true,!true即false

var c = "";
var d = !c; //输出结果为true,""代表false,!false即true

var e = 0;
var f = 5;
var g = !(e || ++f); //输出结果为false, 0 代表false, ++f 代表true, !true 即false;

  

原文地址:https://www.cnblogs.com/wells33373/p/6409177.html