zoukankan      html  css  js  c++  java
  • 2018.12.25笔记

    《运算符》

      运算符:

          数学运算符:+    -    *    /    %    ++    --;

          关系运算符:==    !=    >=    <=    >    <;

          逻辑运算符:&&    ||    !;

          其他运算符:+=    -=    *=    /=    %=    ?:;

       

      三元运算符:

       语法: 条件 ? 结果1 : 结果2; 把条件写在的前面后面跟着用分隔的结果1和结果2,满足条件是结果1,否则是结果2。

            例子1:

            <script type="text/javascript">      

              if(exp){
                exp为true的代码段;
              }else{
                exp为false的代码段;
              }
              exp1?exp2:exp3;
     第一种写法:     if(3>1){
              document.write('aa');
              }else{
              document.write('bb');
              }

     第二种写法:     3>1?document.write('aa'):document.write('bb'); 

     第三种写法:     var res=3>1?'aa':'bb';

                document.write(res);

            </script>

          结果:aa 

       例子2:

              var x=0/0;     ------x = NaN
              res=!isNaN(x)?0:x;
              alert(res);

            结果:NaN

      逻辑运算符:

        1、||(逻辑或), 从字面上来说,两个表达中有一个为true,整个结果为true。只有前后都是false的时候才返回false,否则返回true。    

           alert(true || true);  //true
          alert(true || false);  //true
          alert(false || true);  //true
          alert(false || false);  //false

             alert(0 || 1);  前面0=falsr(0),后面1=true(1),答案是ture,返回结果也就是1

           如果第一个表达式为true,整个结果为true,把第二个表达式短路了 

            只要“||”前面为false ,无论“||”后面是true还是false,结果都返回“||”后面的值。

            只要“||”前面为true ,无论“||”后面是true还是false,结果都返回“||”前面的值。

         2、&&(逻辑与),从字面上来说,只有前后都是true的时候才返回true,否则返回false。

          alert(true && true);   //true
          alert(true && false);  //false
          alert(false && true);     //false
          alert(false && false);  //false
            如果第一个表达式为false,整个结果为false,就把第二个表达式短路了

            只要“&&”前面是false,无论“&&”后面是true还是false,结果都返回“&&”前面的值。

            只要“&&”前面是true,无论“&&”后面是true还是false,结果都将返回“&&”后面的值。

        3、逻辑非“!”: 逻辑取反, false变true,true变false, 

        alert(!true);
        alert(!false);

      自增自减运算符:

         自增运算符“++”,将数值增加1

         自减运算符“- -”,将数值减少1

        如果是++b,则表示先对变量b+1,再执行其他的操作
        如果是b++,则表示先执行表达式操作,再对变量自身+1

       ++/-- 在左边先运算后赋值  //++a

       ++/--在右边先赋值后运算  // a - -  

        __ 整型支持自增 自减运算符
            var num1=1;
            alert(num1++);   //1
            alert(num1);     //2
            alert(++num1);     //3
            alert(num1- -);    //3
         __ 浮点型支持自增自减运算符
           *  num1=12.3;
            alert(- -num1);  //11.3
           *  num1=true;                num1=false;
            alert(++num1);  //2              alert(++num1);  //1 
            alert(- -num1);   //1              alert(- -num1);   //0
         __字符串型不支持自增自减运算符
            num1='3b';
            alert(++num1);  //NaN
            alert(- -num1);   //NaN
         __ null支持自增自减运算符
            num1=null;
            alert(++num1);  //1
            alert(- -num1);   //0
            num1=undefined;    //不支持
            alert(++num1);    //NaN
            alert(null == undefined)  //true

         算术运算符:

       java的算数运算符包括+(加)、-(减)、*(乘)、/(除)、%(取余),

          var i=3 , j=8;
      //常见    document.write(i+j);    //11
          document.write(i-j);     //-5
          document.write(i*j);     //24
          document.write(i/j);     //0.375
          document.write(i%j);    //3
          document.write(3%-8);   //3
          document.write(-3%8);     //-3
          document.write(-3%-8);    //-3

      //特殊    document.write(i+'8');        //38
          document.write('2'+'8');     //28
          document.write(i+j+'3king');    //113king
          document.write(' '+i);      //_3或3    (' ')空字符串不计

          document.write(''+i+j+'3king');  //383king

      - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 

          var z=' '+i;
          alert(typeof z);    //string 

            赋值运算符:        

      运算符  名称    示例  
      =  赋值     a=b+c 把b+c得到的值赋给a
      +=  加等于    a+=b   a=a+b
         - =  减等于    a -=b   a=a -b
       *=  乘等于    a*=b   a=a*b
       /=     除等于    a /=b   a=a /b
         %=      a%=b   a=a%b

       例子:  

          var a=1;
          a+=3;   //a=a+3;  结果:4

          a-=6;   //a=a - 6;  结果:-5
          a*=8;   //a=a * 8;    结果:8
          a/=4;   //a=a / 4;  结果:0.25
          a%=9;    //a=a%9;  结果:1

           alert(a);

      比较运算符:

        比较运算符用于判断两个数据的大小,例如:大于、等于、不等于。比较的结果是一个布尔值( true 或 false )。

     

       比较运算符    名称        举例  结果
        >    大于      a=5;b=2;a>b;   true
        <    小于      a=5;b=2;a<b;   false
       >=    大于等于       a=5;b>=3;   true
       <=      小于等于      a=5;b=2;b<=a;   true
       ==      等于      a=5;b=2;a==b;   false
       !=       不等于      b=2;b!=2;   false

        例子:

            alert(3>1);      //true
            alert(3>=1);      //true
            alert(3<=12);      //true
            alert(3<2);      //false

            var res=1==true;     //true
            res=2=='1';       //false
            res=3=='3king';     //false
            res=0==null;       //false
            res=0!=null;      //true
            res=1===true;         //false
            alert(NaN==NaN);   //false
            alert(null==null);   //true

            alert(res);

  • 相关阅读:
    Windows 认证小结
    Linux 提权学习小结
    ssrf与gopher与redis
    hacker101 CTF 学习记录(二)
    Hacker101 CTF 学习记录(一)
    libwebsockets支持外部eventloop变更
    ypipe, zmq的核心部件,并行读写的管道。
    std::regex与boost::regex的性能差5倍,有profile有真相。
    Spring整合WebSocket
    温故知新——Spring AOP(二)
  • 原文地址:https://www.cnblogs.com/123456fyl/p/10176883.html
Copyright © 2011-2022 走看看