一、if語句的分支 分類:單分支,雙分支,多分支,分支嵌套 ()中可以是一個值,也可以是一個表達式 // 單分支 if (條件表達式){ 代碼段 } // 雙分支 if (條件表達式) { 代碼段1 }else { 代碼段2 } // 多分支 if (條件表達式1){ 代碼段1 } else if ...
一、if語句的分支
分類:單分支,雙分支,多分支,分支嵌套
()中可以是一個值,也可以是一個表達式
// 單分支
if (條件表達式){
代碼段
}
// 雙分支
if (條件表達式) {
代碼段1
}else {
代碼段2
}
// 多分支
if (條件表達式1){
代碼段1
} else if (條件表達式2){
代碼段2
} else if (條件表達式3){
代碼段3
}else{
代碼段4
}
案例:
//1.考駕照的年齡需要在18歲到70歲,不滿足條件提示不符合
var year = parseInt(prompt('請輸入您的年齡'))
if((year<18 || year>70) && year>0){
console.log('您的年齡不符合考駕照');
}
//2.公園票價,瀏覽器接收:老人,成人,小孩,老人提示免票,成人中性別“男”為100,“女”為80,小孩為同性別成人的半票
var gender = prompt('請輸入您的性別');
var year = parseInt(prompt('請輸入您的年齡'));
if(gender==='男') {
if ((year >= 0 && year < 6) || year >= 60) {
console.log('老人兒童免票');
} else if (year > 6 && year <= 12) {
console.log('小孩50元票價');
} else {
console.log('成年人 票價100元');
}
}else if(gender === '女'){
if ((year >= 0 && year < 6) || year >= 60) {
console.log('老人兒童免票');
} else if (year > 6 && year <= 12) {
console.log('小孩50元票價');
} else {
console.log('成年人 票價80元');
}
}else{
console.log('輸入格式錯誤');
}
二、switch
()只能是變數或值,不能是表達式
switch (變數){
case 值1:
代碼段;
break;
case 值2:
代碼段;
break;
...
default:
代碼段;
}
案例:
var d = new Date();
console.log(d); // 獲取日期時間對象
var week = d.getDay(); // 獲取星期幾
switch (week) {
case 0:
console.log('星期天');
break;
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;
}
break必須添加,否則會繼續往下執行
問題:什麼時候用if,什麼時候用switch
if:條件是一個範圍 或者 是具體的值
switch:條件是一個具體的值
能夠使用switch實現的判斷,都可以使用if來實現
//3.會員等級:1代表金牌會員,2是銀牌會員,3是銅牌會員,4是普通會員,四種會員進店消費xxx元,其中普通會員無折扣,會員享受9折,如消費滿1000元,金牌會員享受6折,銀牌會員銷售7折,銅牌會員享受8折。瀏覽器接收會員等級和消費金額,輸出折後金額
var user = parseInt(prompt('請輸入您的會員等級,1代表金牌會員,2是銀牌會員,3是銅牌會員,非會員不需要填入此項'))
var money = parseFloat(prompt('請輸入消費的金額'))
switch (user) {
case 1:
console.log('尊敬的金牌會員');
break;
case 2:
console.log('尊敬的銀牌會員');
break;
case 3:
console.log('尊敬的桐牌會員');
break;
default:
console.log('普通會員');
}
if (money >= 1000) {
if (user == 1) {
console.log('會員折算後' + (money * 0.6));
} else if (user == 2) {
console.log('會員折算後' + (money * 0.7));
} else if (user == 3) {
console.log('會員折算後' + (money * 0.8));
}else{
console.log('您此次消費' + money);
}
console.log('您此次消費' + money);
} else if (money >= 0 && money < 1000) {
if (user == 1 ,2,3) {
console.log('您此次消費' + money);
console.log('會員折算後' + (money * 0.9));
}else{
console.log('您此次消費' + money);
}
}else{
console.log('請檢查您的格式是否輸入錯誤');
}