文章目录

  • 代码块
  • 流程控制语句
  • 循环
  • while循环
  • do-while循环
  • for循环

代码块

  1. 简介:程序是由一条一条语句构成,语句是按照自上向下的顺序一条一条执行的。在JS中可以使用{}来为语句分组
    同一个{}中的语句我们称为是一组语句,它们要么都执行,要么都不执行

  2. 使用:JS中的代码块,只具有分组的作用,没有其他的用途。代码块里面的内容,在外部是完全可见的。

  3. 在ES6中,代码块中的代码是独立于外部代码的,内部定义的变量外部无法使用。在ES5中,代码块内部定义的代码是可以被外部访问的。

    {var name = "凯";console.log("kai");document.write("123");
    }
    console.log("name = " + name);
    

    在ES5中,运行结果为

    {let str = "凯";console.log("kai");document.write("123");}console.log("name = " + str);
    

    在ES6中,运行结果为

流程控制语句

  1. 基本概念:默认情况下,程序的运行流程是这样的:运行程序后,系统会按照书写从上至下顺序执行程序中的每一行代码,但是这并不能满足我们所有的开发要求。
    实际开发中,我们需要根据不同条件之行不同代码或者重复执行某一段代码。
    为了方便我们控制程序的运行流程,JavaScript提供3种流程控制,不同的流程结构可以实现不同的运行流程。这三种流程结构分别是顺序、选择、循环三中基本控制结构构造。
    ① 顺序结构:默认的流程结构,按照书写顺序从上至下执行每一条语句。
    ② 选择结构:对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
    ③ 循环结构:在给定条件成立的情况下,反复执行某一段代码。

  2. if
    ① 如果条件表达式为真,执行语句块1,否则不执行。

    if (条件表达式){语句块1
    }
    后续语句
    

    ② 如果条件表达式为真,执行语句块1,否则执行语句块2.

    if (条件表达式1){语句块1}else{语句块2}
    

    ③ 如果条件表达式1为真,则执行语句快1,否则判断条件表达式2,如果为真执行语句块2,否则再判断条件表达式3,如果为真执行语句块3,当表达式1、2、3都不满足,执行最后一个else

    if (条件表达式1){语句块1
    }
    else if (条件表达式2){语句块2
    }
    else if (条件表达式3){语句块3
    }
    else{语句块4
    }
    

    ④注意:
    Ⅰ.如果只有一条语句时if后面的大括号可以省略
    Ⅱ.分号";"也是一条语句,空语句
    Ⅲ.if else是一个整体,else匹配if的时候匹配离它最近的一个if
    Ⅳ.对于非Boolean类型的值,会先转换为Boolean类型后再判断
    Ⅴ.判断变量与字面量问题:但凡遇到比较一个变量是否等于某一个字面量的时候,把字面量写在前面
    Ⅵ.if语句可以嵌套使用
    ⑤ 练习:石头剪刀布

    //石头剪刀布
    // 0-剪刀 1-石头 2-布// 1. 定义变量
    var player, computer;
    // 2. 电脑出拳 Math.random会随机产生0-1的一个数字
    computer = parseInt(Math.random()*3);
    // 3. 玩家出拳
    player = parseInt(+(window.prompt("请出拳。0-剪刀 1-石头 2-布")));
    console.log(player);
    // 4. 用户输入内容判断
    if (player < 0 || player >2){// 不满足条件alert("输入错误!请重新出拳")player = parseInt(+(window.prompt("请出拳。0-剪刀 1-石头 2-布")));
    }
    else{//满足条件if((player===0 && computer===2) || (player===1 && computer===0) || (player===2 && computer===1)){alert("恭喜你,赢了!")}else if((player===0 && computer===1) || (player===1 && computer===2) || (player===2 && computer===0)){alert("很遗憾,输了");}else{alert("平局");}
    }
    
  3. switch
    ① 简介 switch和if一眼都属于选择结构,都会对给定的条件进行判断,再根据判断结果来决定执行哪一段代码。
    ② 基本格式

     switch (条件表达式) {case 表达式1:语句1;break;case 表达式2:语句2;break;···case 表达式n:语句n;break;default:语句n+1;break;}
    

    ③ 含义
    计算表达式的值,并逐个与case后面表达式的结果进行比较
    当条件表达式的值与某个表达式的值全等时,执行其后面语句,并且不会再与其他case比较
    如果条件表达式的值与所有case后的表达式均不相等时,则执行default后的语句
    ④ 示例

    var num=3;switch (num) {case 1:console.log("壹");break;case 2:console.log("贰");break;case 3:console.log("叁");break;default:console.log("其他");break;}
    

    ⑤ 注意事项
    Ⅰ.case全等于问题
    JavaScript中case判断是否相等时是全等于(===),而不是等于( ==)。也就是说既会判断类型是否相等又会判断值是否相等。
    case后可以是字面量也可以是变量。
    Ⅱ.表达式判断问题
    判断时会先计算表达式的值,再判断。
    Ⅲ.case 的穿透问题
    switch里面的case只要匹配一次其它的都会失效,包括default。
    在case语句最后增加break语句,使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。
    Ⅳ.default的位置问题
    default可以省略。
    default语句可以写在switch语句中的任意位置。

    ⑥ if语句和switch语句转换
    案例:用户输入一个分数,根据分数输出对应等级

    // 要求用户输入一个分数,根据输入的分数输出对应的等级
    // A 90~100
    // B 80~89
    // C 70~79
    // D 60~69
    // E 0~59
    var grade;
    grade = window.prompt("请输入分数:");
    // if实现
    // if (grade>89 && grade<=100)
    //     console.log("A");
    // else if (grade>79)
    //     console.log("B");
    // else if (grade>69)
    //     console.log("C");
    // else if (grade>59)
    //     console.log("D");
    // else if (grade>-1)
    //     console.log("E");
    // else
    //     console.log("×××");// switch实现
    switch (parseInt(grade/10)) {case 10:case 9:alert("A");break;case 8:alert("B");break;case 7:alert("C");break;case 6:alert("D");break;default:alert("E");break;
    }
    

    ⑦ if语句和switch语句选择
    Ⅰ. 分支比较多且无法穷尽时最好用if,其他情况视情况而定
    Ⅱ. 如果数据量不是很大,并且数据是固定的可以用switch
    Ⅲ. 理论上switch效率比if高
    Ⅳ.switch弊端:数据量大、无法穷尽时不要用switch

循环

  1. 循环结构时程序中一种很重要的结构,其特点是:在给定条件成立时,反复执行某程序段,直到条件不成立为止。
  2. 给定的条件称为循环条件,反复执行的程序成为循环体
  3. 循环结构简单来说就是:一次又一次执行相同代码
  4. JS中循环:while语句、do-while语句、for语句

while循环

  1. 格式

    while(条件表达式){语句1;语句2;···
    }
    
  2. 执行流程
    判断条件表达式是否为真,如果为真执行后面代码块
    执行完毕后再次判断条件表达式是否为真,如果为真执行后面代码块
    重复上述过程,知道条件不成立结束while循环
  3. 构成循环结构几个条件
    ① 循环控制条件(条件表达式)
    循环退出的主要依据,来控制循环到底什么时候退出
    ② 循环体(while后面的大括号{}0)
    循环的过程中重复执行的代码
    ③ 循环结束语句(递增,递减,break等)
    能够让循环条件为假的依据,否则退出循环
  4. while循环特点
    如果while中的条件一开始就不成立,那么循环体中的语句永远不会被执行
  5. while循环注意点
    ① 死循环 条件表达式永远为真,循环永远无法结束
    ② 任何值都有真假性 对于非Boolean类型的值,会先转换为Boolean类型后再判断
    ③ while后面如果只有一条语句,可以省略大括号
    ④ 分号问题 分号(;)也是一条语句,代表空语句
    ⑤ 最简单的死循环
  6. break关键字
    ① 跳出switch语句、跳出循环语句
    注意
    break关键字只能用于循环语句和switch语句,在其他地方没有意义
    在多层循环中,一个break语句只能向外跳一层
    break后面的语句永远不会被执行
  7. continue关键字
    ① 跳出当前循环提中剩余的语句而继续执行下一次
    ② 注意

do-while循环

  1. 格式

    do{语句1;语句2;···
    }while(条件);
    
  2. 执行流程
    首先会执行一次循环体中的语句
    接着判断while中的条件表达式是否为真,如果为真再次执行循环体中的语句
    重复上述操作,知道条件不成立结束while循环
  3. 特点
    不管while中的条件是否成立,循环体中的语句至少被执行一遍

for循环

  1. 概述
    JavaScript中for语句使用最为灵活,不仅可以用于循环次数确定的情况,也可用于循环次数不确定只给出循环结束条件的情况,完全可以代替while语句。
  2. 格式
    for(①初始化表达式;②循环条件表达式;④循环后操作表达式)
    {③执行语句
    }
    
  3. for循环执行流程
    for循环开始时,会先执行初始化表达式,而且在整个循环过程中只执行一次初始化表达式
    接着判断循环条件表达式是否为真,如果条件为真,就会执行循环体中的代码
    循环体执行完毕后,接下来会执行循环后的操作表达式
    执行完循环后操作表达式,然后再次判断循环条件表达式是否为真,如果条件为真,就会执行循环体中的语句
    重复上述过程,直到条件不成立就结束for循环
  4. for循环和while循环如何选择
    一般情况下while和for可以互换,但是如果循环执行完毕后不需要使用用于控制循环的增量,用for更好
  5. 注意点
    for循环初始化表达式,循环条件表达式,循环后操作表达式都可以不写
    循环条件表达式默认为真
    for(;;)语句相当于while(1),都是死循环
    其它注意点和while一样

Javascript:流程控制相关推荐

  1. JavaScript流程控制-循环(循环(for 循环,双重 for 循环,while 循环,do while 循环,continue break))

    目录 JavaScript流程控制-循环 循环 for 循环 执行过程: 断点调试: 案例一:求1-100之间所有整数的累加和 案例二:求1-100之间所有数的平均值 案例三:求1-100之间所有偶数 ...

  2. web前端学习584-610(JavaScript流程控制-循环---for循环 while循环 do...while循环 continue break)

    文章目录 JavaScript流程控制-循环 1 循环 2 for 循环 案例1:求1-100之间所有的整数的累加和 案例2:求学生成绩 案例3:一行打印五个星星 3 双重for 循环 案例:打印五行 ...

  3. JavaScript(二)—— JavaScript 运算符/JavaScript 流程控制/JavaScript 数组

    本篇为 JavaScript 系列笔记第二篇,将陆续更新 文章目录 一.运算符 1. 算术运算符 2. 递增和递减运算符 3. 比较运算符 4. 逻辑运算符 短路运算(逻辑中断) 5. 赋值运算符 6 ...

  4. javaScript 流程控制

    流程控制 控制流程走向 一:顺序流程 二:选择流程 1:单分支if () 语法结构 if (条件) { 执行块 } //条件为真,运行执行块.条件为假,不做其他操作 2:多分支 if(条件) { 执行 ...

  5. JavaScript流程控制-分支结构

    流程控制主要有三种结构,分别是顺序结构,分支结构. 1 .if语句 if语句的结构: if(表达式){ 执行语句 } if语句的执行思路             如果if的条件表达式为真 true,则 ...

  6. JavaScript流程控制

    目录 一.什么是流程控制 二.顺序结构 三.分支结构--if语句 1.if语句 1.1语法结构 1.2执行思路 ​ 1.3案例:进入网吧 2.if-else双分支语句 2.1语法结构 2.2执行思路 ...

  7. JavaScript流程控制之分支结构

    if 语句 - 只有当指定条件为 true 时,使用该语句来执行代码 if-else 语句 - 当条件为 true 时执行代码,当条件为 false 时执行其他代码 if-else if-else 语 ...

  8. JavaScript流程控制,带你打印九九乘法表

  9. JavaScript入门(part7)--流程控制

    学习笔记,仅供参考,有错必纠 参考自:pink老师教案 文章目录 JavaScript入门 流程控制 流程控制概念 顺序流程控制 分支流程控制 三元表达式 switch分支流程控制 for循环 双重f ...

  10. python给js变量赋值_python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)...

    11.4 JavaScript 11.41 变量 1.声明变量的语法 //1. 先声明后定义 var name; //声明变量时无需指定类型,变量name可以接受任意类型 name= "eg ...

最新文章

  1. TensorRT Samples: CharRNN
  2. 大型网站系统架构演化之路(转)
  3. python读数据-python读取各种文件数据方法解析
  4. 湖北省政府网站刊文:感染新冠肺炎的适龄男性应进行生育力检查
  5. 推荐系统笔记:使用分类模型进行协同过滤
  6. 【机器学习】支持向量机面试知识点小结
  7. 有研究irrlicht引擎的吗,交流交流
  8. 一个简单的pwn例子---read函数
  9. 柏林噪声双线性插值初步了解(js)
  10. FPGA学习(第8节)-Verilog设计电路的时序要点及时序仿真
  11. 全网最全console命令解析总结
  12. GitHub使用教程
  13. 【转】平时看到的比较好的一篇文章,送给通信专业的学生
  14. Python爬虫:数据提取
  15. [请您去投票]ESRI中国社区2008年度优秀会员评选
  16. 【读书笔记】《人性的弱点》——卡耐基
  17. NLP模型(二)——GloVe介绍
  18. 计算机网络手写笔记图片,一键收藏!清华学子这样记笔记!
  19. 男人应享有动听词汇的权利
  20. cpar文件的导入导出及注意事项

热门文章

  1. 9.1 Zend_Json
  2. 10. CSS 文本
  3. css3中transform-style的用法
  4. js中的onscroll的用法
  5. Linux命令(五)之service服务查找、启动/停止等相关操作
  6. 利用jmeter做一个简单的性能测试并进行参数化设置
  7. 使用JavaScript分别实现4种样式的九九乘法表(1X1分别在左上、左下、右上、右下)...
  8. idea创建Maven项目后启动报404
  9. Spring pom配置详解(转)
  10. apache2配置rewrite_module