JavaScript的流程控制(一)
接下來我麼來講一下JavaScript的流程控制,JavaScript中的流程控制主要包括條件語句和循環語句。這篇博客主要講條件語句。說到條件語句主要包括if條件語句和switch選擇語句兩種。
1.if語句
//語法:
// if(判斷的條件){
// 條件成立時的執行代碼
// }
//if語句當條件不成立時,不執行任何的代碼
var oDate=new Date();
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{
// // 當所有的條件都不成立時 執行的代碼
// }
var aDays=[1,2,3,4,5,6,7];
var oDay=aDays[6]
if(oDay==1){
console.log("今天是星期一")
}else if(oDay==2){
console.log("今天是星期二")
}else if(oDay==3){
console.log("今天是星期三")
}else if(oDay==4){
console.log("今天是星期四")
}else if(oDay==5){
console.log("今天是星期五")
}else if(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;
// }
var oDate=new Date();
var oDay = aDate.getDay();
switch (oDay) {
case 1:
console.log("今天是星期一");
break;
case 2:
console.log("今天是星期二");
break;
case 3:
console.log("今天是星期三");
break;
case 4:
console.log("今天是星期四");
break;
case 5:
console.log("今天是星期五");
break;
case 6:
console.log("今天是星期六");
break;
default:
console.log("今天是星期天");
break;
}
這裏主要要強調一個問題就是switch語句中,每個case語句結束後,必須都要加上一個break,用來結束當前的語句繼續向下執行。如果忘記了添加break,每一個case執行完不會立馬結束,而回繼續向下執行,如下面的代碼:
var number=1;
switch (number){
case 1: console.log(number);
case 2: console.log(number);
case 3: console.log(number);
case 4: console.log(number);
case 5: console.log(number);
default :console.log(number);
}
// 上邊的代碼每種 case 都會執行一遍,即在瀏覽器控制檯打印 6 遍 1。
最後再總結一下if語句和switch語句的區別和應用場景。
if條件語句和switch選擇語句的比較:
- switch語句只支持常量值相等的分支判斷,而if語句支持更爲靈活,任意布爾表達式均可。
- switch語句通常比一系列嵌套if語句效率更高;邏輯更加清晰。
if語句和switch語句的使用場景
- switch選擇語句建議判斷固定值的時候用
- if條件語句建議判斷區間或範圍的時候用
- 最後用switch選擇語句可以實現的,用if都可以實現,但是反過來則不行。
視頻講解鏈接:https://www.bilibili.com/video/BV1mC4y1H7oZ/