流程控制
在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的。
很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能。
简单理解: 流程控制就是来控制我们的代码按照什么结构顺序来执行
流程控制主要有三种结构,分别是顺序结构、分支结构和循环结构,这三种结构代表三种代码执行的顺序。
顺序结构
是程序中最简单、最基本的流程控制,它没有特定的语法结构,程序会按照代码的先后顺序,依次执行,
程序中大多数的代码都是这样执行的。
分支结构
由上到下执行代码的过程中,根据不同的条件,执行不同的路径代码(执行代码多选一的过程),从而得到不同的结果。
if语句 | 范围判断 | if else语句,if else if语句 |
三元表达式 | 如果 则 否则 | ? : |
Switch语句 | 判断结果的值比较确定 | Switch case break default |
if语句
var age = prompt ('输入年龄');
if (age > 18) {
alert ('可以进入网吧');
};
if else语句
var age = prompt ('输入年龄');
if (age > 18) {
alert ('可以进入网吧');
} else {
alert ('不可以进哦~');
};
if else if语句
var score = prompt ('请输入分数');
if (score >= 80) {
alert('优秀');
} else if (score >=60) {
alert('及格啦');
}else {
alert ('不及格哦');
};
三元表达式 time < 10 ? '0'+ time : time
如果数字小于10,则在数字前补0,否则不作操作。
var time = prompt ('输入一个0~59之间的数字');
var result = time < 10 ? '0'+ time : time;
alert(result);
Switch语句
var fruit = prompt ('输入要查询的水果');
switch (fruit) {
case '苹果':
alert ('苹果价格是3.5元/斤');
break;
case '榴莲':
alert ('榴莲价格是35元/斤');
break;
default:
alert ('没有此水果');
break;
}
switch 表达式的值会与结构中的 case 的值做比较。
如果存在匹配全等(===) ,则与该 case 关联的代码块会被执行,并在遇到 break 时停止,整个 switch 语句代码执行结束。
如果所有的 case 的值都和表达式的值不匹配,则执行 default 里的代码。
注意: 执行case 里面的语句时,如果没有break,则继续执行下一个case里面的语句。
案例:判断闰年
算法:能被4整除且不能整除100的为闰年(如2004年就是闰年,1901年不是闰年)或者能够被
400 整除的就是闰年。(100是平年,400是闰年)
var year = prompt('请输入年份');
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
alert('这个年份是闰年');
}else {
alert('这个年份是平年');
};