JavaScript流程控制-分支语句

转载请注明预见才能遇见的博客:https://my.csdn.net/

原文地址:https://blog.csdn.net/weixin_42787326/article/details/81291776

JavaScript流程控制-分支语句

目录

JavaScript流程控制-分支语句

1.流程控制:有三种方式

2.分支语句之if语句:主要是判断 看代码

3.分支语句之if-else语句 (两个分支,只能执行一个分支)看代码

4.分支语句之三元表达式 看代码

5.分支语句之if-else if语句 看代码

6.分支语句之switch-case语句 看代码

7.总结分支语句


 

1.流程控制:有三种方式

* 1.顺序结构:从上到下,从左到右执行的顺序,就叫做顺序结构

* 2.分支结构:if语句,if-else语句,if-else if-else if...语句,switch-case语句,三元表达式语句

* 3.循环结构:while循环,do-while循环,for循环,后期还有一个for-in循环

 

2.分支语句之if语句:主要是判断 看代码

* 语法:

* if(表达式){

* 代码块

* }

* 执行过程:先判断表达式的结果是true还是false,如果是true则执行代码块,如果是false,大括号中的代码是不执行的

 

* 例子:

* 1.如果8大于6,请输出8,如果一个数字大于另一个数字则输出大的数字

* 2.问:小苏的年龄是否大于18岁,如果是成年的,则提示,可以看电影了

* 3.问:小杨帅不帅,则输出真的好帅

//例子1:
var num1=10;
var num2=100;
if(num1>num2){
  console.log(num1);
}

//例子2
var age=19;
if(age>=18){
  console.log("可以看电影了,嘿嘿...");
}

//例子3:
var str="帅";
if(str=="帅"){
  console.log("真的好帅");
}

 

3.分支语句之if-else语句 (两个分支,只能执行一个分支)看代码

*语法:

* if(表达式){

* 代码1

* }else{

* 代码2

* }

* 执行过程: 如果表达式的结果是true则执行代码1,如果表达式的结果是false,则执行代码2


//例子:问;小苏的年龄是否是成年人,如果是成年人则提示,可以看电影,否则;回家写作业区

//定义变量,并初始化
var age = 100;
//判断
if (age >= 18) {
  console.log("可以看电影了,嘎嘎...");
} else {
  console.log("看什么看,回家写作业去");
}


//提示用户请输入年龄----
var age=prompt("请您输入您的年龄");//弹框---并且有输入,输入的内容在age变量中
console.log(age);//最终的结果是字符串的类型



  //案例1:
  var age = parseInt(prompt("请您输入年龄"));
  //判断
  if (age >= 18) {
    console.log("可以看电影了,嘎嘎...");
  } else {
    console.log("看什么看,回家写作业去");
  }

  //练习1:找到两个数字中的最大值
  var num1=10;
  var num2=20;
  if(num1>num2){
    console.log(num1);
  }else{
    console.log(num2);
  }

  //练习2:判断这个数字是奇数还是偶数

  var number=parseInt(prompt("请输入一个数字"));
  if(number%2==0){
    console.log("偶数");
  }else{
    console.log("奇数");
  }

 

4.分支语句之三元表达式 看代码

两个分支,最终的结果是两个分支中的一个,像这种情况可以使用三元表达式

* 三元表达式: 运算符号: ? :

*

* 语法:

* var 变量=表达式1?表达式2:表达式3;

* 执行过程: 表达式1的结果是true还是false,如果是true则执行表达式2,然后把结果给变量;如果表达式1的结果是false,则执行表达式3,把结果给变量

//两个数字中的最大值
var x = 10;
var y = 20;
var result1 = x > y ? x : y;
console.log(result1);

//显示成年还是未成年
var age = 10;
var result2 = age >= 18 ? "成年了" : "未成年";
console.log(result2);

//总结:大多数情况,使用if-else的语句都可以用三元表达式的方式来表示

 

5.分支语句之if-else if语句 看代码

语法:

* if(表达式1){

* 代码1

* }else if(表达式2){

* 代码2

* }else if(表达式3){

* 代码3

* }else{

* 代码4

* }

* else if---这种结构可以写多个,具体多少个看需求,

* else--结构是可以不用写的,具体也是看需求

if语句只有一个分支

if-else语句有两个分支,最终执行一个分支

if-else if-else if-else if-else if..........else---多分支,最终也是执行一个

 

* 执行过程:

* 先判断表达式1的结果, 如果为true则执行代码1,如果为false则判断表达式2。

* 如果表达式2为true则执行代码2,如果为false,则判断表达式3。

* 如果表达式3为true则执行代码3

* 否则执行代码4

    /*
     * 例子: 成绩的结果是在90到100(包含)之间则 显示A级
     *  如果成绩是在80到90(包含)之间,则显示B级
     *  如果成绩是在70到80(包含)之间,则显示C级
     *  如果成绩是在60(包含)到70(包含)之间,则显示D级
     *  如果成绩在0到60(不包含)之间,则显示E级
     * */

    //实现代码
    var score = Number(prompt("请您输入成绩"));//有bug
    if (!isNaN(score)) {//如果为true就说明 不是数字
      if (score > 90 && score <= 100) {
        console.log("A级");
      } else if (score > 80) {
        console.log("B级");
      } else if (score > 70) {
        console.log("C级");
      } else if (score >= 60) {
        console.log("D级");
      } else {
        console.log("E级");
      }
    } else {
      console.log("您输入有误");
    }

    //练习:判断一个年份是不是闰年
    //定义变量存储一个年份
    var year = 2017;
    if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
      console.log("闰年");
    } else {
      console.log("平年");
    }

 

6.分支语句之switch-case语句 看代码

* switch-case语句---分支语句---多分支语句

* 语法:

* switch(表达式){

* case 值1:代码1;break;

* case 值2:代码2;break;

* case 值3:代码3;break;

* case 值4:代码4;break;

* ...多个case

* default:代码5;

*

* }

* 注意问题:

* default后面的break是可以省略的,default也可以省略

* 执行过程:

* 获取表达式的值,和值1比较,如果一样,则执行代码1,遇到break则跳出整个的语句,后面代码不执行

* 如果表达式的值和值1不一样,则和值2比较,如果相同则执行代码2,遇到break则跳出

* 否则和值3比较,相同则执行代码3,遇到break,跳出,否则和值4比较,相同则执行代码4,遇到break则跳出,否则直接执行代码5

//例子:获取一个人的成绩的级别,如果是A级则显示90到100直接的分数
/*
    * 如果是B级则显示80到90分
    * 如果是C级则显示70到80之间分数
    //     * 如果是D级则显示60到70分之间
    //     * 否则显示0到59之间
    //     * */
    var jiBie = "E";
    switch (jiBie) {
        case "A":
        console.log("90到100之间");
        break;
        case "B":
        console.log("80到90之间");
        break;
        case "C":
        console.log("70到80之间");
        break;
        case "D":
        console.log("60到70之间");
        break;
        default :
        console.log("0到59之间");
    }


//注意问题

var num = "10";//字符串
// console.log("10"===10);//true还是false
switch (num) {
    case 10:
    console.log("数字的10");
    break;
    case "10":
    console.log("字符串的10");
    break;
}


//根据月份显示对应的天数
//1,3,5,7,8,10,12 ---31天
//2----28天
//4,6,9,11----30
var month=parseInt(prompt("请输入月份"));
switch (month){
    case 1:console.log("31天");break;
    case 2:console.log("28天");break;
    case 3:console.log("31天");break;
    case 4:console.log("30天");break;
    case 5:console.log("31天");break;
    case 6:console.log("30天");break;
    case 7:console.log("31天");break;
    case 8:console.log("31天");break;
    case 9:console.log("30天");break;
    case 10:console.log("31天");break;
    case 11:console.log("30天");break;
    case 12:console.log("31天");break;

}



var month=parseInt(prompt("请输入月份"));
switch (month){
    case 1:
    case 3:
    case 5:
    case 7:
    case 8:
    case 10:
    case 12:console.log("31天");break;
    case 4:
    case 6:
    case 9:
    case 11:console.log("30天");break;
    case 2:console.log("28天");break;
}


//练习:根据数字显示对应的星期
var num=parseInt(prompt("请输入一个星期的数字"));
switch (num){
    case 1:console.log("星期一");break;
    case 2:console.log("星期二");break;
    case 3:console.log("星期三");break;
    case 4:console.log("星期四");break;
    case 5:console.log("星期五");break;
    case 6:console.log("星期六");break;
    case 7:console.log("星期日");break;
    default:console.log("输入错误");
}

 

7.总结分支语句

* 分支语句:

* if语句:一个分支

* if-else语句:两个分支,最终只执行一个分支

* if-else if-else if...语句: 多个分支,也是只会执行一个

* switch-case语句:多分支语句,最终也会一个(必须要有break)

* 三元表达式:和if-else语句是一样的

* 什么时候使用if-else if...: 一般是对范围的判断

* 什么时候使用switch-case语句:一般是对具体的值的判断

* 如果有多个分支,是针对范围的判断一般选择if-else if的语句

* 如果有多个分支,是针对具体的值判断,一般选择用switch-case语句

 

JavaScript流程控制-分支语句

博客地址:https://blog.csdn.net/weixin_42787326/article/details/81291776

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值