zoukankan      html  css  js  c++  java
  • 02 js基础 操作符 流程控制

    # 1. 运算符 #

    也称操作符,用于实现赋值、比较和执行算数运算等功能的符号

    js中常用的运算符:

    算数运算符

    递增和递减运算符

    比较运算符

    逻辑运算符

    赋值运算符

    # 2.算数运算符 ##

    ## 2.1 算数运算符概述  ##

        运算符        描述            实例
        +           加            10 + 20 = 30
        -           减            10 - 20 = -10
        *           乘            10 * 20 = 200
        /           除            10 / 20 = 0.5
        %            取余数(取模)返回除法的余数9 % 2 = 1

    浮点型运算有问题  不能直接拿着浮点数来进行相比较  是否相等

    + - * / 采用数字优先级

    # 3.递增递减运算符 #
    ## 3.1 递增递减运算符概述 ##

    如果需要反复给数字变量添加或减去1,可以使用递增(++)和递减( -- )运算符来完成。 
    在 JavaScript 中,递增(++)和递减( -- )既可以放在变量前面,也可以放在变量后面。放在变量前面时, 我们可以称为前置递增(递减)运算符,放在变量后面时,我们可以称为后置递增(递减)运算符。 

    必须搭配变量配合使用


        ++num前置自增  就是自加1 类似于 num = num + 1,但是++num写起来更简单


    前置

          

    <script>
            var num = 1;
            num = num + 1;
            num = num + 1;
            console.log(num) //3
                // 2.前置递增运算符 ++ 写在变量前面
            var age = 10;
            ++age; //类似age = age + 1 
            console.log(age)
                // 3. 先加1 然后返回值
            var c = 10;
            console.log(++c + 10)
        </script>



    后置

           

     <script>
            var num = 10;
            num++; //num = num + 1
            console.log(num);
            //1. 前置自增 和后置自增如果单独使用效果一样
            //2. 后置自增 口诀:先返回原值 后自加1
            var age = 10;
            console.log(age++ + 10)
            console.log(age)
        </script>


    #4. 比较运算符 #

    ## 4.1 比较运算符概述 ##
    概念:比较运算符(关系运算符)是两个数据进行比较时所使用的运算符,比较运算后,会返回一个布尔值 (true / false)作为比较运算的结果。 

        运算符名称            说明                    案例                    结果
        <                    小于号                  1<2                    true 
        >                   大于号               1>2                   false
        >=           大于等于号(大于或者等于)      2>=                  true 
        ≤=           小于等于号(小于或者等于)     3<= 2                 false
        ==             判等号(会转型)              37 == 37              true 
        !=                     不等号              37 != 37                   false
        === !==        全等要求值和数据类型都一致     37 === '37'             false

    # 5.逻辑运算符 #
    ## 5.1 逻辑运算符概述 ##

    概念:逻辑运算符是用来进行布尔值运算的运算符,其返回值也是布尔值。后面开发中经常用于多个条件的判断 

        逻辑运算符                说明                案例
        &&                "逻辑与",简称"与”and        true && false
        ||                "逻辑或",简称"或”or        true | | false
        !                "逻辑非",简称"非" not    ! true

    ## 5.2 逻辑与&& ##

    两边条件都是true 才返回true , 否则返回false

    ## 5.3 逻辑与|| ##

    两边条件都是false 才返回false , 否则返回true

    ## 5.4 逻辑非! ##

    逻辑非(!)也叫作取反符,用来取一个布尔值相反的值,如 true 的相反值是 false 

        isOk = !true; 
        console.log(isOk);  // false 

    ## 5.5 短路运算(逻辑中断) ##

    短路运算的原理:当有多个表达式(值)时,左边的表达式值可以确定结果时,就不再继续运算右边的表达式的值; 

    1.逻辑与

    语法:表达式1 && 表达式2

    如果第一个表达式的值为真,则返回表达式2

    如果第一个假,则返回表达式1

    2.逻辑或

    语法: 表达式1 || 表达式2 

    如果第一个表达式的值为真,则返回表达式1 

    如果第一个表达式的值为假,则返回表达式2 

        语法: 表达式1 || 表达式2 
        如果第一个表达式的值为真,则返回表达式1 
        如果第一个表达式的值为假,则返回表达式2 


    # 6.赋值运算符 #

        赋值运算符            说明                    案例
            =            直接赋值            var usrName =我是值';
        +=。=        加、减一个数后在赋值    var age= 10; age+=5; // 15
        *= /= %=    乘除、取模后在赋值         var age=2; age*=5;// 10



        var age = 10; 
        age += 5;  // 相当于 age = age + 5; 
        age -= 5;  // 相当于 age = age - 5; 
        age *= 10; // 相当于 age = age * 10; 


        优先级            运算符            顺序
        1                小括号            ()
        2                一元运算符        ++ -- !
        3                算数运算符        先*/%后+-
        4                关系运算符        >  >=  <  <=
        5                相等运算符        == != ===  !==
        6                逻辑运算符        先&&后||
        7                赋值运算符        =
        8                逗号运算符        ,


        
    # 7.流程控制 #

    控制代码的执行顺序
    有三种:顺序结构、分支结构、循环结构

    ## 7.1 顺序结构 ##

    按照代码的先后顺序,依次执行

    ## 7.2 分支结构 ##

    由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码(多选一) 得到不同的结果

    - if语句

    - switch 语句


        // 条件成立执行代码,否则什么也不做
        if(条件表达式) {
            // 成立执行的代码语句
        }

    判断年龄是否进入网吧

        

     <script>
            var age = prompt("请输入年龄");
            if (age >= 18) {
                alert('欢迎光临')
            }
        </script>



    ## 7.3 if else语句(双分支语句) ##

        // 条件成立执行代码,否则什么也不做
        if(条件表达式) {
            // 成立执行的代码语句
        }else{
            //否则执行的代码
        }

    ## 7.4 if else if 多分支语句 ##

         

    // 适合于检查多重条件。 
        if (条件表达式1) { 
        语句1; 
        } else if (条件表达式2)  { 
        语句2; 
        } else if (条件表达式3)  {  
          语句3;  .... 
        } else { 
            // 上述条件都不成立执行此处代码 
        } 


        
    # 8. 三元表达式 #

        表达式1?表达式2:表达式3;
        如果表达式1位true,则返回表达式2的值,如果表达式1为false,则返回表达式3的值

        

      <script>
            // var age = prompt("请输入年龄");
            // if (age >= 18) {
            //     alert('欢迎光临')
            // } else {
            //     alert('走开')
            // }
            var age = prompt("请输入年龄")
            age >= 18 ? alert('欢迎') : alert('走开')
        </script>



    # 9. 分支流程switch 语句 #
    ## 9.1 语法结构 ##

    switch 语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值 的选项时,就可以使用 switch。 

        

        switch( 表达式 ){      
        case value1:         // 表达式 等于 value1 时要执行的代码        
             break; 
        case value2:         // 表达式 等于 value2 时要执行的代码        
             break; 
        default:         // 表达式 不等于任何一个 value 时要执行的代码 
        }
     



    - switch :开关 转换  , case :小例子   选项 

    - 关键字 switch 后面括号内可以是表达式或值, 通常是一个变量 

    - 关键字 case , 后跟一个选项的表达式或值,后面跟一个冒号 

    - switch 表达式的值会与结构中的 case 的值做比较  

    - 如果存在匹配全等(===) ,则与该 case 关联的代码块会被执行,并在遇到 break 时停止,整个 switch 语句代码 执行结束 

    - 如果所有的 case 的值都和表达式的值不匹配,则执行 default 里的代码

    - 如果case语句中 没有break,则继续执行下一个case

    switch水果查询

         

    <script>
            var fruit = prompt("输入查询的水果")
            switch (fruit) {
                case '苹果':
                    alert("苹果一斤1块")
                    break;
                case '栗子':
                    alert("LLLLL");
                default:
                    alert("查无")
            }
        </script> 




    # 10.比较switch语句 与if else if 的区别 #

    switch语句 通常处理case 比较确定值的情况,if则更加灵活

    分支较少时用if 效率高

    分支多时 用switch 结构清晰

  • 相关阅读:
    How To Scan QRCode For UWP (4)
    How To Crop Bitmap For UWP
    How To Scan QRCode For UWP (3)
    How To Scan QRCode For UWP (2)
    How To Scan QRCode For UWP (1)
    How to change windows applicatioin's position via Win32 API
    8 Ways to Become a Better Coder
    How to resize or create a thumbnail image from file stream on UWP
    C# winform压缩文件夹带进度条
    MS ACCESS MID函数
  • 原文地址:https://www.cnblogs.com/xujinglog/p/12880881.html
Copyright © 2011-2022 走看看