zoukankan      html  css  js  c++  java
  • JavaScript运算符优先级——"++,--,&&,||“

    上篇文章比较了"?,="三者的优先级:"?">"=">","
    今天继续学习"++,--,&&,||"四者的优先级,强化JavaScript运算符基础。
    首先上图一张,运算符的比较:

    结论:

    1.优先级:"++,--">"&&">"||"

    2.即时性:++,--操作符里面的变量计算时候具有即时性。例如a=0,a++,那么a++结果是0,a是1.


    ||和&&是截断操作符,对||来说,前面成立后面就不用计算,对&&来说前面不成立后面就不会计算

    例如:var a=b=c=0;
    ++a||++b:  ++a的值为1,所以++b不执行,a=1,b=0;
    
    ++a&&++b:  ++a值为1,再计算++b,a=1,b=1;
    
    ++a||++b&&++c,&&优先级低于||,先计算++a,a=1后面执行a=1,b=0,c=0.
    

    下面我们看一个复杂的例题:

    var  a =1 ,b =0;
    var c =  a-- && b++ || a++ && b-- || b++;
    alert(a);
    alert(b);
    alert(c);
    

    结果是:a=1,b=2,c=1

    结计算过程详解:

    1.c原式相当于:(a--) && (b++) || (a++) && (b--) || (b++);

    2.计算到第3位时候注意:此时全式变为:1(a为0)&&0(b为1)||0(a为1)&&(b--)(0&&any特点,不用计算这位,b仍为1)||1(该位是在第2个&&计算完之后,开始计算的,所以b变为2),即1&&0||0&&(b--)||1

    3.a=1,b=2,c=1

  • 相关阅读:
    PHP获取指定分钟数的下一个整数倍
    phpspreadsheet
    澳大利亚 主要城市列表
    db2编目抽取
    openssl实现CA自签证书和颁发数字证书
    基于Docker的redis集群搭建
    Python测试DB2连通性
    在Vim中查看文件编码
    搭建redis集群
    Python(十)之GUI编程
  • 原文地址:https://www.cnblogs.com/QingFlye/p/4313445.html
Copyright © 2011-2022 走看看