zoukankan      html  css  js  c++  java
  • JS基础——循环很重要

    介绍循环之前,首先要说一下同样很重要的if-else结构,switch-case结构

    ①if-else结构
    if(判断条件) {
    条件为true时执行
    }
    else{
    条件为false时执行
    }
    ②if-else-if结构(阶梯if)
    if(条件一){
    条件一成立
    }
    else if( 条件二){
    条件一不成立&&条件二成立
    (else-if部分可以有多个)
    }
    else{
    条件一不成立&&条件二不成立
    }
    ③嵌套if结构
    结构写法
    if(条件一){
      条件一成立
    if(条件二){
     
     
    }
    else{
    条件一成立&&条件二不成立
    }
    }
    else{
    条件一不成立
    }
    要注意的是
    if()中的表达式,运算之后结果应该是
    ①boolean: true为真,false为假
    ②string: 非空字符串为真,空字符串为假
    ③null / NaN /Undefined 全为假
    ④object类型 全为真
    ⑤number: 0为假,非零为真
    Switch-Case结构
    1..结构写法:
    switch(表达式){
      case 常量表达式1:
      语句一;
      break;
      case 表达式2:
      语句二;
      break;
    .......
      default:
      语句N
    }
    2.注意事项:
    ①switch()中的表达式以及每个case后的表达式,可以为任何JS支持的数据类型(对象和数组除外)
    ②case后边的所有常量表达式必须各不相同,否则,只会执行第一个。
    ③case后的常量可以是任何数据类型;同一个switch结构的不同case,可以是多种不同的数据类型;
    ④switch在进行判断的时候,采用的是全等===判断
    ⑤break;执行完case代码后,跳出当前switch结构。
    若缺少break:从正确的case项开始,依次执行所有的case和default
    ⑥switch结构在判断时,只会判断一次正确答案。当遇到正确的case项后,将不会再判断后续项。依次往下执行
    用法示例:输入一个月份,判断属于哪个季度
                            var mon=Number(prompt("请输入月份:")); 
                switch(parseInt((mon-1)/3)){
                    case 0:
                    document.write("第一季度");
                    break;
                    case 1:
                    document.write("第er二季度");
                    break;
                    case 2:
                    document.write("第三季度");
                    break;
                    case 3:
                    document.write("第四季度");
                    break;
                }
                            
    好了,下边就是要说的非常重要的循环了;首先来说一下while循环
    【循环结构的步骤】
    ①声明循环变量
    ②判断循环条件
    ③执行循环体(while大括号中的所有代码)操作
    ④改变循环变量
    ⑤循环执行②③④
    【JS中循环条件支持的数据类型】
    支持JS中的所有类型
    ①boolean: true为真,false为假
    ②string: 非空字符串为真,空字符串为假
    ③null / NaN /Undefined 全为假
    ④object类型 全为真
    ⑤number: 0为假,非零为真
    至于do-while循环:
    先执行,再判断;即便条件不成立,也先执行一次。
    最后来说一下最常用的 for循环
    for(初始化循环变量;循环条件;修改循环变量的值){
      
    }
    for循环有三个表达式①定义循环变量②判断循环条件③更新循环变量,之间用分号隔开。
    三个表达式可省略,但分号不可省略
    特点:先判断,再执行
    ②for循环三个表达式均可以由多部分组成,中间用逗号分隔。但第二部分判断要用&&连接,最终结果需要为真/假
    例如:
    for(n=1,j=5; n<=5; n++,j--){
    }
     
     
     
    循环控制语句
    1.break:终止本层循环,继续进行循环后边的语句。
    当eak只循环有多层时,br会跳过一层循环
    2.continue:跳过本次循环,继续执行下次循环
    对于for循环,continue执行后,继续执行循环变量更新语句n++
    对于while do-while,continue执行后,继续执行循环条件判断;所以在这两个循环中使用时,必须注意:continue一定要在n++后边使用
    【循环嵌套】
    外层循环转一次,内层循环转一圈
    下边我们做个经典的图形题:用*打印一个菱形
                  var f,g;
                for(f=1;f<=4;f++){
                    for(g=1;g<=4-f;g++){
                        document.write("&nbsp");
                    }
                    for(g=1;g<=2*f-1;g++){
                        document.write("*");
                    }
                    document.write("<br />");
                }
                for(f=4;f>0;f--){
                    for(g=4-f;g>=0;g--){
                        document.write("&nbsp");
                    }
                    for(g=2*f-4;g>=0;g--)
                    {
                        document.write("*")
                    }
                    document.write("<br />");
                }        

     简单总结一下:
    【嵌套循环特点】
    外层循环控制行数,内层循环控制每行元素个数
    【图形题思路】
    1.确定图形一共几行,即为外层循环次数;
    2.确定每行有几种元素,代表有几个内层循环;
    3.每种元素有几个,即为每个内层循环的次数;(通常找出每种元素个数与行号的关系式,即为当前内层循环的最大值(从一开始))
  • 相关阅读:
    Miller-Rabin素性测试
    ###Canny边缘检测算子
    ###SIFT特征
    建立一个免费的网站
    ###C中的extern-static-const关键词
    ###Git使用问题
    ###Fedora下安装Retext
    ###使用phpmailer自动邮件提醒
    Markdown学习
    有线和无线同时连接,选择其一上网
  • 原文地址:https://www.cnblogs.com/cherishli/p/6681838.html
Copyright © 2011-2022 走看看