一、逻辑分支(选择结构,分支结构)

  • 其实今天的课程才算开始涉及到逻辑
  1. 程序的三大结构
  • 顺序结构 - 每天

    • 代码逐行执行,一行一行自上而下执行
  • 分支结构
    • 有选择了,十字路口的选择,只能选择一个,如果...否则...
  • 循环结构 - 后话
    • 重复,重复执行多次,起因:无聊,然后开始:吃,胖,心情不好,吃,胖....
  1. 分支语句
  • 分支和循环结构,需要配合一些专用代码才能实现,专用代码叫:语句

  • if:单分支

    • if(条件){执行语句}
  • if else:双分支

    • if(条件){条件为true时,要执行的语句}else{条件为false时,要执行的语句}
    • 分支的嵌套(双分支模拟的多分支)
      • 在执行体内,可以继续写其他分支
      • if(条件1){}else if(条件2){}else if(条件3){}else......
  • if的小括号里面也会发生隐式类型转换规则

    • 规则:其他转布尔

      • 数值转布尔:非0为true,0为false
      • 字符转布尔:非空字符,为true,空字符,为false
      • 对象转布尔:对象为true
      • 数组转布尔:数组为true
      • 函数转布尔:函数为true
      • 特殊数据转布尔:undefined,NaN,null都为false
          if( false ){
      console.log("真");
      }else{
      console.log("假");
      }
  • switch:多分支

    • 语法:

      var n = 2;
      var msg = "";
      switch(Number(n)){
      case 0:
      msg = "星期日";
      break;
      case 1:
      msg = "星期一";
      break;
      ...
      default:
      msg = "你输入的数字不对,请输入0~6之间的数字";
      }
      console.log(msg);
    • 规则:
      • 当要判断的值是固定的数据时,选择使用switch

        • 如果要判断的值是范围时,选择使用if-else
      • switch的case判断,不存在隐式类型转换

        • 某些情况下,需要根据场景,选择是否需要主动转换
      • 如果你不管上面的使用建议,非要使用switch判断范围,注定要多掉点头发

        • 使用switch判断范围
        var cj = 45;
        switch( true ){
        case cj<60:
        console.log("不及格");
        break;
        case cj>=60 && cj<70:
        console.log("及格");
        break;
        default:
        console.log("以上case都没执行");
        }
    • 某些问题需要利用switch的case的穿透特性,解决 ...后话

js分支语句的更多相关文章

  1. HTML基础--JS简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、数组、函数、函数调用.avi

    JS简介 1.JavaScript是个什么东西? 它是个脚本语言,需要有宿主文件,它的宿主文件是HTML文件. 2.它与Java什么关系? 没有什么直接的联系,Java是Sun公司(已被Oracle收 ...

  2. js简介、基本语法、类型转换、变量、运算符、分支语句、循环语句、函数、函数调用

    javascript是个脚本语言,需要有宿主文件,他的宿主文件是html文件. 三个常用对话框 alert("")警告对话框,弹出一个警告对话框 <script> al ...

  3. JavaScript基础&实战(3)js中的流程控制语句、条件分支语句、for循环、while循环

    文章目录 1.流程控制语句 1.1 代码 1.2 测试结果 2.弹窗提示输入内容 2.1 代码 2.2 测试结果 3.条件分支语句 3.1 代码 3.2 测试结果 4.while和 do...whil ...

  4. js部分---运算符,if分支语句,for循环;switch case 的用法;

    ------------------------------------------运算符---------------------------------------------------- *数 ...

  5. JS基础语法---分支语句总结

    分支语句: if语句:一个分支 if-else语句:两个分支,最终只执行一个分支 if-else if-else if...语句: 多个分支,也是只会执行一个 switch-case语句:多分支语句, ...

  6. JS基础语法---分支语句之:switch-case语句---3个练习

    switch-case语句---分支语句---多分支语句 语法: switch(表达式){ case 值1:代码1;break; case 值2:代码2;break; case 值3:代码3;brea ...

  7. JS基础_条件分支语句:switch语句

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. JavaScript语法、对话框。分支语句

    一.用法 其所在的位置有三块,1.head里面  2.body里面  3.</html>后   一般都写在</html>后 其用法为<script></scr ...

  9. 【java开发】分支语句、循环语句学习

    一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...

随机推荐

  1. Python调用函数带括号和不带括号的区别

    1.不带括号时,调用的是这个函数本身 ,是整个函数体,是一个函数对象,不需等该函数执行完成 2.带括号(此时必须传入需要的参数),调用的是函数的return结果,需要等待函数执行完成的结果 如果函数本 ...

  2. nginx 常用教程网址

    nginx rewrite比较齐全的教程 http://www.bubuko.com/infodetail-1810501.html

  3. Node.js躬行记(11)——E2E测试

    Cypress是为现代网络构建的前端测试工具,解决了开发人员和 QA 工程师在测试应用程序时面临的关键痛点. 在这个测试框架中包含了E2E测试.集成测试和单元测试(内嵌了Mocha),我们需要的是它的 ...

  4. 鸿蒙内核源码分析(进程概念篇) | 进程在管理哪些资源 | 百篇博客分析OpenHarmony源码 | v24.01

    百篇博客系列篇.本篇为: v24.xx 鸿蒙内核源码分析(进程概念篇) | 进程在管理哪些资源 | 51.c.h .o 进程管理相关篇为: v02.xx 鸿蒙内核源码分析(进程管理篇) | 谁在管理内 ...

  5. Phalcon如何切换数据库《Phalcon入坑指南系列 三》

    本系列目录 一.Phalcon在Windows上安装 <Phalcon入坑指南系列 一> 二.Phalcon入坑必须知道的功能(项目配置.控制器.模型.增.删.改.查) 三.Phalcon ...

  6. OpenStack创建Win10实例

    直接用Windows的iso文件创建实例是创建不出来的,需要先在kvm下创建qcow2格式的虚拟机,然后用已经创建好的虚拟机文件当做OpenStack的镜像来创建实例就好了. 首先第一点是需要有一台L ...

  7. VUE自学日志02-应用与组件实例

    准备好了吗? 我们刚才简单介绍了 Vue 核心最基本的功能--本教程的其余部分将更加详细地涵盖这些功能以及其它高阶功能,所以请务必读完整个教程! 应用 & 组件实例 创建一个应用实例创建一个应 ...

  8. Java实现完数

    完数 找出1-1000以下的完数 public static void main(String[] args) { for(int i=2;i<1000;i++) { int sum=0; fo ...

  9. Dart 中的final 和 const

    Dart 常量和常量值 final 和 const 两个关键字用来定义常量,有什么区别呢? final 声明的是运行时常量,const声明的是编译时常量 const 可以声明常量值 举个例子: imp ...

  10. MyBatis 批量插入数据的 3 种方法!

    批量插入功能是我们日常工作中比较常见的业务功能之一,之前我也写过一篇关于<MyBatis Plus 批量数据插入功能,yyds!>的文章,但评论区的反馈不是很好,主要有两个问题:第一,对 ...