
조건문은 특정 조건에 대한 만족 여부에 따라 다른 프로그램 코드를 실행시킬 수 있도록 해준다.
자바스크립트에서 조건문은 if-else를 사용하는 방법과 switch문을 사용하는 방법이 있다.
if 조건문은 조건을 만족하는 경우에만 코드블록을 실행한다. 여기서 조건을 만족한다는 것은 Boolean 타입으로 참(true) 에 해당할 때만 코드 블록을 실행한다는 것이다.
else 문은 단독으로 사용할 수 없으며 반드시 if 조건문과 같이 사용해야 한다. if 조건문이 모두 거짓(false)인 경우 else 코드 블록이 실행된다. else 문은 조건식을 가지지 않는다.
else if문은 먼저 정의된 if 조건문이 false일 경우 실행할 새로운 조건문이다.
if(조건식){//제일 먼저 조건 체크, 조건을 만족하면 코드 블록을 실행하고 전체 조건문을 빠져나옴
//실행할 코드 블록
}else if(조건식){//앞서 작성된 조건식을 만족하지 않은 경우, 조건을 체크하고 조건을 만족하면 코드 블록 실행 후 전체 조건문을 빠져나옴
//실행할 코드 블록
}else{//앞서 작성된 모든 조건식을 만족하지 않는 경우 무조건 실행되는 코드 블록
//실행할 코드 블록
}
let age=12; //나이
let busFare=0; //버스 기본 요금
if(age<=7){
//age(나이)가 7세 이하이면
busFare=0; //버스 기본 요금은 0원
}
if(age>=8 && age<=13){
//age(나이)가 8세 이상 13세 이하이면
busFare=450; //버스 기본 요금은 450원. 여기서는 주어진 나이가 12이므로, 버스 요금은 450원이 됩니다.
}
if(age>=14 && age<=19){
//age(나이)가 14세 이상 19세 이하이면
busFare=720; //버스 기본 요금은 720원
}
if(age>=20 && age<70){
//age(나이)가 20세 이상 70세 미만이면
busFare=1200; //버스 기본 요금은 1200원
}
if(age>=70){
//age(나이)가 70세 이상이면
busFare=0; //버스 기본 요금은 0원
}
let age=12; //나이
let busFare=0; //버스 기본 요금
if(age<=7){
//age(나이)가 7세 이하이면
busFare=0; //버스 기본 요금은 0원
}else if(age>=8 && age<=13){
//age(나이)가 8세 이상 13세 이하이면
busFare=450; //버스 기본 요금은 450원. 여기서는 주어진 나이가 12이므로, 버스 요금은 450원이 됩니다.
}else if(age>=14 && age<=19){
//age(나이)가 14세 이상 19세 이하이면
busFare=720; //버스 기본 요금은 720원
}else if(age>=20 && age<70){
//age(나이)가 20세 이상 70세 미만이면
busFare=1200; //버스 기본 요금은 1200원
}else if(age>=70){
//age(나이)가 70세 이상이면
busFare=0; //버스 기본 요금은 0원
}
마지막 else if문의 경우는 else문으로 변경이 가능하다.
let age=12; //나이
let busFare=0; //버스 기본 요금
if(age<=7){
//age(나이)가 7세 이하이면
busFare=0; //버스 기본 요금은 0원
}else if(age>=8 && age<=13){
//age(나이)가 8세 이상 13세 이하이면
busFare=450; //버스 기본 요금은 450원. 여기서는 주어진 나이가 12이므로, 버스 요금은 450원이 됩니다.
}else if(age>=14 && age<=19){
//age(나이)가 14세 이상 19세 이하이면
busFare=720; //버스 기본 요금은 720원
}else if(age>=20 && age<70){
//age(나이)가 20세 이상 70세 미만이면
busFare=1200; //버스 기본 요금은 1200원
}else{
//위의 모든 조건식을 만족하지 않으면
busFare=0; //버스 기본 요금은 0원
}
else 문은 별도의 조건식이 없고, 앞에서 정의된 모든 조건식을 만족하지 않는 경우 무조건 실행이 되는 코드 블록이다.
조건식을 거짓으로 취급하는 값
switch문은 상수 값(숫자 혹은 문자 가능, 비교 구문 안 됨)에 해당하는 case절을 실행한다. default절이 있는 경우 모든 case절의 값과 일치하지 않을 경우 실행한다.
swtich(상수값){
case 상수값1:
//실행할코드
break;
case 상수값2:
//실행할코드
//break;
case 상수값3:
//실행할코드
//break;
default: //case절의 상수값이 모두 일치하지 않는 경우
//실행할코드
//break;
}
let d=new Date();
let day=d.getDay(); //일요일이면 0, 월요일이면 1, 토요일이면 6을 반환
let dayName="";
switch(day){//조건식에 상수값을 전달
case 0:
dayName="일요일";
break;
case 1:
dayName="월요일";
break;
case 2:
dayName="화요일";
break;
case 3:
dayName="수요일";
break;
case 4:
dayName="목요일";
break;
case 5:
dayName="금요일";
break;
case 6:
dayName="토요일";
break;
default:
dayName="";
break;
}