switch case多分支语句实现案例 您所在的位置:网站首页 wswitch语句 switch case多分支语句实现案例

switch case多分支语句实现案例

2024-06-02 08:41| 来源: 网络整理| 查看: 265

代码样式 //注意区分这两组switch case多分支语句 switch (值) { case '1': // 这里可以写很多行代码 break; case '2': // 这里可以写很多行代码 break; case '3': // 这里可以写很多行代码 break; default: //这里写默认执行的代码,即前面代码都不能执行时才执行的 } switch (值) { case 1: // 这里可以写很多行代码 break; case 2: // 这里可以写很多行代码 break; case 3: // 这里可以写很多行代码 break; default: //这里写默认执行的代码,即前面代码都不能执行时才执行的 }

(1)第一组switch case多分支语句中,switch()中的值是字符串;第二组switch case多分支语句中,switch()中的值是number。 注:在使用switch case多分支语句时,switch()中的值必须与case后的值保持全等,即值的内容与类型都必须相等。 (2)当switch()中的值与某一个case后的值全等时,则执行该case后的代码,代码执行完毕,关键字break结束整个switch case多分支语句;若没有一个case后的值与switch()中的值全等时,则执行default中的代码。

案例实现

(1)输入任意字符,判断是星期几 注意观察以下两种switch case后的值 第一种是数字,num % 7后隐式转换成数字

var num = prompt(""); switch (num % 7) { 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 0: console.log("星期日"); break; default: console.log("请输入数字"); }

控制台查看: 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 第二种是字符

var num = prompt(""); switch (String(num % 7)) { 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 "0": console.log("星期日"); break; default: }

(2)石头剪刀布的游戏实现:1代表石头 2代表剪刀 3代表 布;parseInt(Math.random()*3) + 1 随机生成123的公式

// 计算机随机生成一个数 var num = parseInt(Math.random() * 3) + 1 var myNum = Number(prompt('输入1-3: 1代表石头 2代表剪刀 3代表 布')) switch (num) { case 1: // 继续判断玩家的数 switch (myNum) { case 1: console.log('平局') break case 2: console.log('输了') break case 3: console.log('赢了') break } break case 2: // 继续判断玩家的数 switch (myNum) { case 1: console.log('赢了') break case 2: console.log('平局') break case 3: console.log('输了') break } break case 3: // 继续判断玩家的数 switch (myNum) { case 1: console.log('输了') break case 2: console.log('赢了') break case 3: console.log('平局') break } break }

控制台查看: 在这里插入图片描述 在这里插入图片描述

case穿透性

当某一case后没有写break时,这一case及之后的代码将都会执行。

case穿透性案例

(1)小案例

var num = Number(prompt('输入1-3之间的数: ')); switch (num) { case 1: console.log('1314'); break; case 2: console.log('1315'); case 3: console.log('1316'); default: console.log("输错数要打屁股!"); }

控制台查看: 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 观察控制台截图可知,case 1后的代码中有break,故输入数字1时,控制台只会输出case 1中的代码;当输入数字2时,由于case 2与case 3中都没有break,故case 2及之后的代码都会执行。 (2)判断每个月有多少天

var month = Number(prompt('输入1-12之间的数: ')); switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: console.log(month + '月有' + '31天'); break; case 4: case 6: case 9: case 11: console.log(month + '月有' + '30天'); break; case 2: //二月需要判断是平年还是闰年,此处假设是平年 console.log(month + '月有' + '29天'); break; default: console.log("输错数要打屁股!"); }

由于case的穿透性,当你输入1、3、5、7、8、10、12时,控制台都会显示有31天,当你输入4、6、9、11时,控制台都会显示有30天。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有