IT_Programming/JavaScript

자바스크립트 완벽가이드 - 6.4 else if

JJun ™ 2010. 7. 4. 20:21


이미 언급한 바와 같이 if/else 문은 어떤 조건의 테스트 결과에 따라 둘 중 하나의 코드를 실행한다.

하지만 둘 중 하나가 아니라 여러 개 중 하나의 코드를 실행하고 싶다면 어떻게 할까?

이를 위한 한 가지 방법으로 else if 문이 있다. else if는 진정한 의미에서 자바스크립트 문장은 아니다.

 

다만 if/else 문을 반속해서 사용하던 것이 프로그램 관습으로 굳어져서 널리 쓰이게 된 것뿐이다.

if (n == 1) {
// 코드 블록 #1 실행
}
else if (n == 2) {
// 코드 블록 #2 실행
}
else if (n == 3) {
// 코드 블록 #3 실행
}
else {
// 모든 테스트가 false이면 코드 블록 #4 실행
}

위 코드에는 전혀 특별할 게 없다. 그저 if 문의 나열에 지나지 않으며, 이어지는 if는 그 이전 문장의 else 절에 속한 것뿐이다. 이러한 else if 문을 다음과 같이 다단계로 중첩된 형태로 써도 문법적으로는 동등하지만 else if 문을 사용하는 게 더 좋고 읽기도 편하다.
if (n == 1) {
// 코드 블록 #1 실행
}
else{
if (n == 2) {
// 코드 블록 #2 실행
}
else {
if (n == 3) {
// 코드 블록 #3 실행
}
else{
// 모든 테스트가 false이면 코드 블록 #4 실행
}
}
}