分支结构与循环结构
分支结构
if语句
if(判断语句) { //如果为真,则执行下面的代码块,否则不执行
代码
...
}
if-else语句
if(判断语句){ //如果判断语句为真,则执行代码块1.否则执行代码块2
代码块1
} else {
代码块2
}
例:判断某年是否为闰年。
分析:满足闰年的条件是,该年能被4
整除,但是不能被100
整除,或者能够被400
整除。
var year = prompt("请输出年份");
if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
console.log(year + "为闰年");
} else {
console.log(year + "不是闰年")
}
if-else if-else嵌套语句
if(判断1){ //如果判断1为真,则执行代码块1,否则接着判断
代码块1
}else if(判断2) { //如果判断2为真,则执行代码块2.否则接下去判断,循环往复
代码块2
} ... {
...
} else { //如果上面的判断的结果都为假,则执行else里面的代码
代码块n
}
例:比较两个数的大小
if (a > b) {
console.log(a + ">" + b)
}else if (a == b) {
console.log(a + "=" + b)
}else { // a < b
console.log(a + "<" + b)
}
switch-case语句
switch(值) {
case 值1:
代码
case 值2:
代码
...
default:
代码
}
switch
中的值与case
中的值从上到下进行比较,执行第一个匹配的case
后的代码,并且会执行后面case
后的代码,除非遇到break
语句才不会执行后面的代码,直接跳出switch
语句。如果switch
的值与所有case
后的值都没有匹配,则会执行default
后的代码。
var season = “春”;
switch(season) {
case "春":
console.log("春天好美“);
break;
case "夏":
console.log("夏天好美“);
break;
case "秋":
console.log("秋天好美“);
break;
case "冬":
console.log("冬天好美“);
break;
default:
console.log("四季“);
}
春天好美
循环结构
while循环
while(条件判断) {
循环体
... ...
}
如果条件判断为真,则执行循环体的内容,否则跳出循环
例:使用循环打印出
0-2
。
var i = 0;
while (i < 3) {
console.log(i);
i++;
}
0
1
2
do-while循环
do {
循环体
... ...
}while (条件判断)
do-while
与while
循环不同的是,do-while
不管条件是否成立都会执行一次循环,即先执行在判断。
var i = 0;
do {
console.log(i);
}while(i < 0) //虽然0 < 0为false,但是还是执行了一次循环体
0
for循环
for(表达式1; 表达式2; 表达式3){
循环体
... ...
}
for
循环的执行过程为,先执行表达式1
,然后对表达式2
进行判断,如果为真,那么执行循环体,如果为假则跳出循环,若执行了循环体,那么接下来会执行表达式3
,然后对表达式2
进行判断,如此循环往复。
for(var i = 0; i < 2; i++){
console.log(i);
}
上述循环的执行过程为,先执行表达式1
var i = 0;
然后执行表达式2
i < 2 //0 < 2,结果为true
所以执行循环体
console.log(i);
执行完循环体以后,就执行表达式3
i++; //此时i变为了1
然后接着执行表达式2
i < 2; // 1 < 2 结果为true
所以接着执行循环体
console.log(i);
然后执行表达式3
i++ //此时i变为了2
这时
i < 2 // 2 < 2 false
所以跳出循环,循环结束。
循环控制语句
break
如果在循环体中执行了break
语句,那么会跳出循环,循环结束,比如:
var i = 0;
while(true){ //设置了一个死循环,始终执行循环体
console.log(i);
if (i == 2) { //当i=2时跳出循环
break;
}
}
0
1
2
continue
如果在循环体中执行了continue
语句,那么continue
后下面的语句都不会继续执行,直接进入执行完循环体以后的操作,比如在while
循环中,就直接去进行条件判断,在for
循环中,就直接执行表达式3
。
例:打印出
1,3
,使用循环实现。
var i = 0;
while (i < 3) {
i++;
if (i == 2) {
continue;
}
console.log(i);
}
1
3