if (조건1)
명령문1
else if (조건2)
명령문2
else if (조건3)
명령문3
...
else
명령문N
eg)만약 10이상이면 true, 아니면 false이다.
function isPassing(grade) {
if (grade >= 10) {
return true;
} else {
return false;
}
}
console.log(isPassing(12)); // true
condition ? exprIfTrue : exprIfFalse
eg) 만약 21살 이상이면 beer, 아니면 juice이다.
var age = 26;
var beverage = (age >= 21) ? "Beer" : "Juice";
console.log(beverage); // "Beer"
연결된 조건문 처리하기
조건 연산자는 아래와 같이 연결해 사용할 수 있다. 이는 연결된 if … else if … else if … else와 유사하다.
function example(…) {
return condition1 ? value1
: condition2 ? value2
: condition3 ? value3
: value4;
}
복수의 if 조건문은 switch문으로 바꿀 수 있다.
switch문을 사용한 비교법은 특정 변수를 다양한 상황에서 비교할 수 있다. 코드 자체가 비교 상황을 잘 설명한다는 장점이 있다.
let a = 2 + 3;
switch (a) {
case 4:
console.log("비교하려는 값보다 작습니다.");
break;
case 5:
console.log("비교하려는 값과 일치합니다.");
break;
case 6:
console.log("비교하려는 값보다 큽니다.");
break;
default:
console.log("어떤 값인지 파악이 되지 않습니다.");
} // 결과 값 : "비교하려는 값과 일치합니다."
let a = 2 + 3;
switch (a) {
case 4:
console.log("비교하려는 값보다 작습니다.");
case 5:
console.log("비교하려는 값과 일치합니다.");
case 6:
console.log("비교하려는 값보다 큽니다.");
default:
console.log("어떤 값인지 파악이 되지 않습니다.");
} // 결과 값 :
// 비교하려는 값과 일치합니다.
// 비교하려는 값보다 큽니다.
// 어떤 값인지 파악이 되지 않습니다.
-> 결과 값이 case문 안에 break문이 없으면 조건에 부합하는지 여부를 따지지 않고 이어진다. 그렇기 때문에 값이 나와도 case문을 계속 실행시키는 것이다.
switch문을 실행시킬 때에는 break를 꼭 사용하자!