Js基础
来源:互联网 发布:网络传播推广方案 编辑:程序博客网 时间:2024/05/21 08:03
JavaScript中switch-case语句的用法
首先,在介绍之前,我先跟大家说一下它的基础语法:
switch(值){ 变量的值或是数据值 case 值1: 要执行的代码; break; case 值2: 要执行的代码; break; ... default: 要执行的代码; break;}
执行过程:
程序执行到switch处的小括号,先计算里面的值,拿着计算后的定值,依次和case中的值进行匹配,如果匹配成功,则执行此case里面的代码,执行完毕之后,遇到break,则跳出当前结构,如果匹配都不成功,则要看当前结构当中有没有default,如果有的话,则进入到default处执行里面的代码,如果没有,则跳出当前结构,执行后面的代码。
不知道你们有没有晕,反正我看到这概念我是晕了。我说一下的见解吧:其实就是拿case后面的值和switch处小括号的值做比较,只要两个值是全等于(===)(下面会跟你们介绍,先看着先),那么就会执行case下面的代码段。没错就是这么简单!
===(全等于)
顾名思义,全等于比较的不仅仅是值,还有两个数据的类型的比较,如果类型都不一样,那么两个数据就无可比性了
废话不多说,上一段代码就明白了…
对学员的结业考试成绩评测 成绩>=90 :A 90>成绩>=80 :B 80>成绩>=70 :C 70>成绩>=60 :D 成绩<60 :E
var score = prompt("请输入学员的考试成绩评测"); //成绩var level; //评测等级switch(!!score){ //这里的!!是把score这个数据从字符串隐式转为布尔值,当然,这里直接写true完全没问题。 case score >= 90: //score >= 90 这是一个关系表达式,会得到一个布尔值的结果 level = 'A'; break; case score >= 80: level = "B"; break; case score >= 70: level = "C"; break; case score >= 60: level = "D"; break; default: level = "E"; break;}// 1. 假如我输入的是91 // 2. 往下走会得到一个“91”的字符串(prompt()这个函数返回的值是字符串)// 3. !!"91"会变成true(也就是布尔类型)// 4. 而case后面的语句"score >= 90"也会得到一个布尔类型的值,同样是true(91本来就大于90)// 5. 两个true一比较,类型和值完全相等,所以就执行了score >= 90:后面的代码了console.log("学员的成绩为:"+score+",评测等级为:"+level)
switch-case多用于定值之间的使用,像这种定区间问题,一般用if-else-if比较方便一点,下面,我就演示一下这题用switch-case的定值的做法:
var score = prompt("请输入学员的考试成绩评测"); //成绩var level; //评测等级switch(parseInt(score / 10)){ // 1. 这里的score/10是为了获取到score的十位数上的值// 2. 然后用parseInt()函数去掉小数得到一个整数。// 3. 这样一来,我们就把一个区间的值给定下来了。// 4. 例如:在>=90这个区间,我输入99,根据score/10得到9.9,// 5. 然后parseInt()再把小数去掉,就得到9了,// 6. 也就是说,不过我输入九十几,最终只能得到9,对应的也就是level = "A"这段代码得到了执行。 case 9: level = "A"; break; case 8: level = "B"; break; case 7: level = "C"; break; case 6: level = "D"; break; case 5: level = "E"; break; case 4: level = "E"; break; case 3: level = "E"; break; case 2: level = "E"; break; case 1: level = "E"; break; case 0: level = "E"; break; default: level = "A"; break;}console.log("学员的成绩为:"+score+",评测等级为:"+level)
阅读全文
0 0
- js基础
- js基础
- js基础
- js基础
- JS基础
- js基础
- js基础
- JS基础
- js基础
- js基础
- js基础
- js基础
- JS基础
- js 基础
- js-基础
- js基础
- js基础
- js基础
- 【Spring】value和ref
- zookeeper+activemq配置消息中间件集群 服务器配置
- 关于操作QT遇到的问题
- 如何用cmd命令递归文件夹中的所有特定文件,拷贝到另一个文件夹中
- JPA连接sqlserver数据库 用户'sa'登录失败
- Js基础
- 笨方法学Python练习43:你来制作一个游戏
- 线程句柄和线程标识
- iOS NSError详解 NSError错误code对照表 自定义、定制NSError 一看就懂
- 【深度】MySQL集群 对比 SequoiaDB弹性扩展
- mysql函数- 根据roleid,来判断这个roleid在哪个区间中0-100,100-200...
- leetcode 72. Edit Distance
- IDEA常用快捷键
- 奥维奥(AVA)免费为您提供麦肯锡《2016中国汽车消费者报告》