• js知识之选择与循环


    1.程序的设计结构

    ①自上而下;

    ②选择结构:根据条件的真假,进行选择执行某代码的部分。

    包括:if,switch,三目运算;

    ③循环

    2.选择

    ①if选择循环:

            第一种:if(条件表达式)  当条件为真的时候就执行后面的语句
     语句;当条件为假,加不执行。

            第二种:

            if (条件表达式) {
                       语句;
                    } else { //代表之前条件的对立面,千万不要在else后面写条件
                       语句;
                     }

    第三种(多条件判断):
                 if (条件) {
                     语句;
                 } else if (条件) {
                     语句;
                 } else if (条件) {
                     语句;
                 } else if (条件) {
                     语句;
                 } else {
                     语句;
                 }

    其中的注意点:

            ①if else if是一条语句,所有条件都是互斥的,当某个条件成立时,后面的代码都不执行

            ②在进行代码调试手动调节的时候,目的是跟踪代码执行顺序,观察数值,,,操作步骤:1.打断点--->2.单步调试


    调试:通过手动执行代码观察程序的执行顺序及变量赋值。

    步骤:1.打断点(断点:代码启动时,停止的位置)

               2.刷新进入了手动调试模式

               3.蓝色横线代表即将执行,但是并未执行的代码行

               4.鼠标放到以执行代码的变量中,即可显示数值 

               5.点击单步调试,按键 Step over

              6. 结束调试:取消断点,再次刷新


    三目运算特指条件运算符,因为在JS中拥有三个操作数的运算符只有一个

    语法:表达式1?表达式2:表达式3;

    表达式1是一个布尔值,为true返回表达式2,为false返回表达式3

    ③switch语句

            1.        switch只能用于等值判断
                    通过匹配表达式的值和被匹配表达式比对,匹配成功则执行后续语句

            2.语法规则:switch (匹配表达式) {
                    case 被匹配表达式1:
                         语句;
                     case 被匹配表达式2:
                         语句;
                     case 被匹配表达式3:
                         语句;
                     case 被匹配表达式4:
                        语句;
                 }

            3.注意事项

            ①switch执行的顺序,switch只匹配一次,从匹配值开始,直至语句结束。

            ② break阻止穿透效果。

            ③case后面不能写范围

            ④default,代表之前所有条件的对立面

            ⑤ 所有非关联性的case,顺序可以任意替换


    3.选择嵌套

            ①if的嵌套不要超过5层(3层后就开始复杂了)
            ②if的嵌套:一个if的语句是另一个if条件的表达式

            ③规避循环嵌套==》if (a > 0 && b > 0 && c > 0) {
                    console.log("相关操作");
                }


    4.编程思想

    程序=算法+语法

    算法:解决问题的方法

    语法:js编程中的规定


    5.循环:重复执行某一段代码,直至跳出条件达到,而终止循环

    6.while循环语句

            语法:while(条件表达式){

                         循环体;   

                    }

            注意事项:1.执行顺序(有以下几点)

                                    ①while的执行顺序是先条件表达式,后循环体

                                    ②如果条件表达式为真,则执行循环体,然后继续判断条件

                                    ③如果条件为假则跳出循环

                            2.循环构成的要素

                                    a.循环变量,必须要初始化,控制循环的次数

                                    b.(有限次数的循环),必须有使循环趋近于结束的条件

                                    c.循环体,每次循环要执行的代码

    7.死循环使用的场景: 用户登路使用密码

    8.do-while循环

           ① 语法: do{
                    循环体
                 }while(条件);

           ② while和do...while的异同:

                    当首次条件成立时,while和do...while没有区别
                    当首次条件不成立时,do...while要比while多执行一次循环体

    9.for循环

            ①语法:for(表达式1;表达式2;表达式3){
                     表达式4;
               }

    ②表达式1:初始换循环变量,

       表达式2:循环条件吗,

       表达式3:使循环趋近于结束的条件,

       表达式4:循环体

    ③使用场景:1.知道循环次数用for,2.不知道循环次数用while, 3.基本就不用do...while

    10循环的嵌套

    概念:一个循环的循环体是另一个循环

    循环的总次数,是内外循环次数的乘积,,,通常循环不超过2层,三层是极限(官方的概念)

    举例:
    for (var k = 0; k < 10; k++) {
           for (var j = 0; j < 10; j++) {
                 for (var i = 0; i < 10; i++) {
                     // console.log(k, j, i);
                    console.log(i)
                }
                 console.log(j);
             }
             console.log(k);
         }

    11break的使用

            a.与switch连用,阻止穿透

             b.跳出本层循环的关键字

    12.prompt在页面输入内容,返回值用户输入的数据,返回内容为字符串

            注意事项:在使用弹出框时,请将script放在body内部

            var x = prompt();

            console.log(x + 10);

    13.continue:跳出本次的循环,开始下一次的循环

  • 相关阅读:
    解析post requests方法返回的response信息
    flink 自定义序列化对象Sink/Source
    Python数据分析实战-实现T检验(附源码和实现效果)
    LeetCode 1403 非递增顺序的最小子序列[贪心] HERODING的LeetCode之路
    值改变事件(SMART PLC梯形图FC)
    什么是虚拟DOM?什么是diff算法?
    Flink部署——内存配置
    Java --- JVM虚拟机栈
    【打卡】牛客网:BM36 判断是不是平衡二叉树
    游戏开发最佳10个工具与技术方案
  • 原文地址:https://blog.csdn.net/szydqq/article/details/125483883