• js:运算符(算术、递增递减、比较、逻辑、赋值、运算符的优先级)


    1、算术运算符

    (1)基本算术运算

            <script>
                console.log(1 + 23);
                console.log(1 - 23);
                console.log(1 * 23);
                console.log(4 / 2);
                console.log(23 % 2);    
            </script>

     (2)浮点数的不精确问题

            <script>
                console.log(0.1 + 0.2);
            </script>

     在js中要尽量避免浮点数的使用

    (3)不要比较两个浮点数是否相等

            <script>
                console.log((0.1+0.2)==0.3);
            </script>

    2、递增和递减运算符

           <script>
                var num=122;
                console.log(num++);
                console.log(++num);
                
                var num1=121;
                console.log(--num1);
                console.log(num1--);
            </script>

     运算符的前置和后置是不一样的,前置的话是先执行加或键操作再输出,而后置的时候是先输出再执行加或减的操作。

    3、比较运算符

    (1)基本比较运算

            <script>
                console.log(12>23);
                console.log(12>=12);
                console.log(12!=23);
                console.log(12==12);            
            </script>

     (2)默认转换数据类型

           <script>
                console.log(12=='12');            
            </script>

     会将字符串转换为数字类型的数据,只要求值相等,数据类型不要求

    console.log(12==='12');            

     全等于的时候为false,要求值和数据类型一致

    (3)==与===

    <!DOCTYPE html>
    <html>
    
        <head>
            <meta charset="UTF-8">
            <title>Java Script</title>
            <script type="text/javascript">
                function welcome() {
                var num1=23;
                var num2="23";
                alert(num1==num2)
            }
            </script>
        </head>
        <body onload="welcome()" bgcolor="aquamarine">
            <center>
                <h1>你好</h1>
            </center>
        </body>
    
    </html>

    该程序的运算结果返回true,虽然两个变量的数据类型不同,也就是说“==”值比较两个变量的数值,不对类型进行判断。

    <!DOCTYPE html>
    <html>
    
        <head>
            <meta charset="UTF-8">
            <title>Java Script</title>
            <script type="text/javascript">
                function welcome() {
                var num1=23;
                var num2="23";
                alert(num1===num2)
            }
            </script>
        </head>
        <body onload="welcome()" bgcolor="aquamarine">
            <center>
                <h1>你好</h1>
            </center>
        </body>
    
    </html>

    运行上面代码返回false,也就是说“===”不仅比较数值,还对数据类型进行比较。

    <!DOCTYPE html>
    <html>
    
        <head>
            <meta charset="UTF-8">
            <title>Java Script</title>
            <script type="text/javascript">
                function welcome() {
                var num1=23;
                var num2="23";
                alert(num1!==num2)
            }
            </script>
        </head>
        <body onload="welcome()" bgcolor="aquamarine">
            <center>
                <h1>你好</h1>
            </center>
        </body>
    </html>

    “!==”也是对数值和类型同时进行判断。

    4、逻辑运算符

    逻辑运算符是用来进行布尔值运算的运算符,返回值是布尔类型

            <script>
                console.log(true&&true);
                console.log(true&&false);
                
                console.log(true||false);
                
                console.log(!false);
            </script>

    •  &&相当于 与运算
    • ||    相当于 或运算
    • !  相当于取非

    &&和||存在短路运算,例如:在进行&&运算的时候如果&&前面的表达式为false的话,就不再对表达式后面的表达式进行计算了,因为&&要求前后的表达式都为true才能输出true,既然第一个为false,那么计算结果就肯定为false,后面一个表达式已经不能改变运算的结果了

    5、赋值运算符(右赋值给左)

    (1)基本赋值运算

            <script>
               var num=10;
               console.log(num);
            </script>

     (2)其他操作

    num=num+3

           <script>
               var num=10;
               console.log(num+=3);
            </script>

     num=num*3

    console.log(num*=3);

    6、运算符的优先级

    小括号

    一元运算符:++、--、!

    算术运算符:+、-、*、/

    关系运算符:大于、小于等

    相等运算符:==、!=、===、!==

    逻辑运算符:&&比||优先级高

    赋值运算符

    逗号运算符

  • 相关阅读:
    舌尖上的中关村
    解决winform窗体闪烁问题
    24段魔尺,可以折出哪些精美图案(续)
    24段魔尺,可以折出哪些精美图案
    关于Python编程的一些问答
    BZOJ 1025: [SCOI2009]游戏
    BZOJ 1025: [SCOI2009]游戏
    BZOJ 1207: [HNOI2004]打鼹鼠
    BZOJ 1207: [HNOI2004]打鼹鼠
    BZOJ 1046: [HAOI2007]上升序列
  • 原文地址:https://www.cnblogs.com/zhai1997/p/11425468.html
Copyright © 2020-2023  润新知