JavaScript的流程控制(一)
接下来我么来讲一下JavaScript的流程控制,JavaScript中的流程控制主要包括条件语句和循环语句。这篇博客主要讲条件语句。说到条件语句主要包括if条件语句和switch选择语句两种。
1.if语句
//语法:// if(判断的条件){// 条件成立时的执行代码// }//if语句当条件不成立时,不执行任何的代码varoDate=newDate(); console.log(oDate.getDay()); if(oDate.getDay()==6){ console.log("今天是星期五") }
2.if…else语句
if…esle语句,当条件成立时,执行if后面的执行代码,不成立时 执行else代码块。
//语法:// if(判断的条件){// // 条件成立时执行代码// }else{// // 条件不成立时执行的代码// }if(oDate.getDay()==6){ console.log("今天是星期六") }else{ console.log("今天不是星期六") }
3.if…else if…else语句
使用 if…else if…else 语句来选择多个代码块之一来执行。
// 语法:// if(判断条件){// // 当前条件成立时 执行的代码// }else if(判断条件2){// // 当前条件2成立时 执行的代码// }else if(){// ...// }else{// // 当所有的条件都不成立时 执行的代码// }varaDays=[1,2,3,4,5,6,7]; varoDay=aDays[6] if(oDay==1){ console.log("今天是星期一") }elseif(oDay==2){ console.log("今天是星期二") }elseif(oDay==3){ console.log("今天是星期三") }elseif(oDay==4){ console.log("今天是星期四") }elseif(oDay==5){ console.log("今天是星期五") }elseif(oDay==6){ console.log("今天是星期六") }else{ console.log("今天是星期天") }
4.switch 语句
switch 语句用于基于不同的条件来执行不同的动作。
// 语法:// switch (key) {// case 当key为value1:// // 执行代码// break;// case 当key为value2:// // 执行代码// break;// case 当key为value3:// // 执行代码// break;// case 当key为value4:// // 执行代码// break;// ...// default: // //当key 匹配不到case时 默认的执行的代码// break;// }varoDate=newDate(); varoDay=aDate.getDay(); switch (oDay) { case1: console.log("今天是星期一"); break; case2: console.log("今天是星期二"); break; case3: console.log("今天是星期三"); break; case4: console.log("今天是星期四"); break; case5: console.log("今天是星期五"); break; case6: console.log("今天是星期六"); break; default: console.log("今天是星期天"); break; }
这里主要要强调一个问题就是switch语句中,每个case语句结束后,必须都要加上一个break,用来结束当前的语句继续向下执行。如果忘记了添加break,每一个case执行完不会立马结束,而回继续向下执行,如下面的代码:
varnumber=1; switch (number){ case1: console.log(number); case2: console.log(number); case3: console.log(number); case4: console.log(number); case5: console.log(number); default :console.log(number); } // 上边的代码每种 case 都会执行一遍,即在浏览器控制台打印 6 遍 1。
最后再总结一下if语句和switch语句的区别和应用场景。
if条件语句和switch选择语句的比较:
switch语句只支持常量值相等的分支判断,而if语句支持更为灵活,任意布尔表达式均可。
switch语句通常比一系列嵌套if语句效率更高;逻辑更加清晰。
if语句和switch语句的使用场景
switch选择语句建议判断固定值的时候用
if条件语句建议判断区间或范围的时候用
最后用switch选择语句可以实现的,用if都可以实现,但是反过来则不行。