本节目标
- 掌握js中4种分支结构。
内容摘要
本篇介绍了js中的4种分支结构:if、if else、else if、switch case,用来判断在不同的条件下运行不同的代码分支。
阅读时间10~15分钟。
分支结构
js中分支结构总共有4种:
1if 2if else 3else if 4switch case
if
if 用来判断某个条件是否成立,如果成立则执行条件块里的代码。
语法结构:
1if (condition) { 2 当条件为 true 时执行的代码 3}
示例1,输入一个绩效分数,判断是否大于90,如果大于等于90,那么输出:考核等级S。
1let score = parseInt(window.prompt("请输入绩效分数:")); 2if (score >= 90) { 3 console.log("考核等级S"); 4}
if else
上面 if 只是当条件成立的时候执行对应的代码块,如果不成立也需要执行代码块,那就可以用 else 了。
语法结构:
1if (condition) { 2 当条件为 true 时执行的代码 3} else { 4 当条件为 false 时执行的代码 5}
示例1,输入一个绩效分数,如果大于等于60,那么输出考核通过,否则输出:考核较差,需要再观察或者劝退。
1let score = parseInt(window.prompt("请输入绩效分数:")); 2if (score >= 60) { 3 console.log("考核通过"); 4} else { 5 console.log("考核较差,需要再观察或者劝退。"); 6}
else if
if 只能判断一个分支条件,如果需要判断多分支结构可以用 else if。
语法结构:
1if (condition1) { 2 当条件 condition1 为 true 时执行的代码 3} else if (condition2) { 4 当条件 condition2 为 true 时执行的代码 5} else if (condition3) { 6 当条件 condition3 为 true 时执行的代码 7} ... else { 8 上面条件都不满足时执行的代码 9}
其中:
上面任何一个分支执行后,就不会再执行其他分支的内容了
示例1, 输入一个绩效分数,根据如下规则输出S、A、B、C、D
190~100:输出考核等级S,奖励3倍工资 280~89:输出考核等级A,奖励2倍工资 370~79:输出考核等级B,奖励1倍工资 460~69:输出考核等级C,不奖励,需要继续努力 50~59:输出考核等级D,考核较差,需要再观察或者劝退。
1let score = parseInt(window.prompt("请输入绩效分数:")); 2if (score >= 90 && score <= 100){ 3 console.log("考核等级S,奖励3倍工资"); 4} else if (score >= 80 && score < 90) { 5 console.log("考核等级A,奖励2倍工资"); 6} else if (score >= 70 && score < 80) { 7 console.log("考核等级B,奖励1倍工资"); 8} else if (score >= 60 && score < 70) { 9 console.log("不奖励,需要继续努力"); 10} else if (score >= 0 && score < 60) { 11 console.log("考核较差,需要再观察或者劝退。"); 12} else { 13 console.log("不正确的分数"); 14}
switch case
语法结构:
1switch(expression) { 2 case 变量1: 3 // 语句1代码块 4 case 变量2: 5 // 语句2代码块 6 case 变量3: 7 // 语句3代码块 8 break; 9 ... 10 default: 11 // 条件都不满足,执行代码块 12}
示例1,用switch case实现判断周几是否上课:
1周一:上课 2周二:上课 3周三:不上课 4周四:上课 5周五:上课 6周六:不上课 7周天:不上课 8
先询问用户今天是星期几,接受用户的答案后,判断输出今天是否上课。
1let day = window.prompt("请输入星期几:"); 2switch (day) { 3 case "周一": 4 console.log("上课"); 5 break; 6 case "周二": 7 console.log("上课"); 8 break; 9 case "周三": 10 console.log("不上课"); 11 break; 12 case "周四": 13 console.log("上课"); 14 break; 15 case "周五": 16 console.log("上课"); 17 break; 18 case "周六": 19 console.log("不上课"); 20 break; 21 case "周天": 22 console.log("不上课"); 23 break; 24 default : 25 console.log("请输入正确的值"); 26 break; 27}
本节总结
- js中4种分支结构:if、if else、else if、switch。
练习题
- 接受用户输入的四个数字a,b,c,d,将四个数中的最大值求出来(例如输出结果为:a的值为20,a最大)!
- 接收用户输入的字母,并判断是不是元音字母。
- 输入3个数,按大小输出这3个数(例如:用户输入的是:10 5 20,排序后为:5 10 20)
- 接收用户输入的一个2000年来的日期:2020.04.01,判断日期是否合法,比如:2020.04.31就不合法。
- 和电脑玩一个剪刀石头布的游戏,电脑随机出,用户输入剪刀、石头或者布,判断谁赢。提示:随机数可以参考Math.random()方法。
