자바스크립트의 조건문은 특정 조건에 따라 실행할 코드를 선택할 수 있게 해주는 문법이다. 기본 코드 흐름과 달리 조건문을 활용하면 조건이 만족할 때만 실행되도록 설정할 수 있다. 자바스크립트에서는 이를 조건문 또는 if statement라고 한다. 기본적인
if
문을 시작으로, 조건이 여러 개일 때 유용한 else if 문과 else 문까지 함께 살펴보자.
if 문의 기본 구조는 다음과 같다. if라는 키워드 뒤에 소괄호 안에 조건을 넣고, 중괄호 { }
안에 조건이 참일 때 실행할 코드를 작성한다.
// if문 (if statement)
if (조건) {
동작부분 // 조건이 참일 때 실행되는 코드
}
if
는 영어로 “만약”이라는 의미로, 조건이 true일 때만 중괄호 안의 코드가 실행된다는 의미다.
물이 0도 이하에서 얼기 때문에, 온도가 0 이하일 때 "물이 얼었습니다"라는 메시지를 출력하는 조건을 작성해보자.
let temperature = 0; // 현재 온도
if (temperature <= 0) {
console.log("물이 얼었습니다."); // 온도가 0 이하일 때만 실행
}
위 코드에서는 온도가 0 이하일 때 "물이 얼었습니다."
를 출력한다. 만약 온도가 0을 초과하면 조건이 거짓(false)이므로 아무 메시지도 출력되지 않는다.
어떤 조건을 만족하지 않을 때도 다른 동작을 실행하고 싶다면 else 문을 추가할 수 있다. else
는 if 문 조건이 거짓일 때 실행할 코드를 담는다.
if (temperature <= 0) {
console.log("물이 얼었습니다."); // 온도가 0 이하일 때 실행
} else {
console.log("물이 얼지 않았습니다."); // 온도가 0 초과일 때 실행
}
위 코드에서는 온도가 0 이하일 때는 "물이 얼었습니다"
가 출력되고, 그렇지 않을 때는 "물이 얼지 않았습니다"
가 출력된다.
물의 상태는 얼거나(0도 이하), 액체로 존재하거나(0도 초과 100도 미만), 끓는(100도 이상) 조건이 있다. 두 가지 이상의 경우를 다루고 싶을 때, 중첩 if 문을 사용해 조건을 추가할 수 있다.
if (temperature <= 0) {
console.log("물이 얼었습니다.");
} else {
if (temperature >= 100) {
console.log("물이 끓고 있습니다.");
} else {
console.log("물이 얼지도 끓지도 않습니다.");
}
}
이 코드에서는 세 가지 상태를 확인할 수 있다.
"물이 얼었습니다."
를 출력"물이 끓고 있습니다."
를 출력"물이 얼지도 끓지도 않습니다."
를 출력중첩 if
문은 기능적으로는 문제 없지만, 코드가 복잡하고 가독성
이 떨어질 수 있다. 이때 else if 문을 활용하면 코드가 훨씬 간결해진다. else if는 첫 번째 if
조건이 거짓일 때 다른 조건을 검사하는 역할을 한다.
if (temperature <= 0) {
console.log("물이 얼었습니다.");
} else if (temperature < 100) {
console.log("물이 얼지도 끓지도 않습니다.");
} else {
console.log("물이 끓고 있습니다.");
}
"물이 얼었습니다."
출력"물이 얼지도 끓지도 않습니다."
출력"물이 끓고 있습니다."
출력위 코드는 중첩
if
문과 동일하게 동작하면서도, 더 간결하고 읽기 쉬워진다.else if
문을 통해 조건을 분기하면서 코드의 가독성을 높일 수 있다.
else if
문을 여러 번 사용해 다양한 조건을 추가할 수 있다. 예를 들어, 물이 끓는 상태에서 온도가 더 올라가면 증기 상태로 변환된다고 가정해보자.
// 온도가 140도라면
if (temperature <= 140) {
console.log("물이 얼었습니다.");
} else if (temperature < 100) {
console.log("물이 얼지도 끓지도 않습니다.");
} else if (temperature < 150) {
console.log("물이 끓고 있습니다.");
} else {
console.log("물이 증기로 변했습니다.");
}
위 코드에서 온도가 140도라면 어떤 순서로 실행될지 살펴보자.
temperature <= 0
를 확인. 거짓(false)이므로 다음 조건으로 넘어간다.temperature < 100
를 확인. 거짓(false)이므로 다시 넘어간다.temperature < 150
를 확인. 참(true)이므로 "물이 끓고 있습니다."
가 출력하고, 나머지 조건은 검사하지 않는다.이처럼 else if
문은 첫 번째 if
조건이 만족하지 않을 경우 다른 조건을 확인할 때 매우 유용하며, 코드를 훨씬 더 간결하게 만들어준다.
- if 문은 특정 조건을 만족할 때만 코드를 실행할 수 있게 해준다.
- else는
if
조건이 만족하지 않을 때 실행할 코드를 추가한다.- else if는 중첩
if
를 사용하지 않고 여러 조건을 확인할 때 유용하다.- 복잡한 조건을 다룰 때는 else if 문을 활용해 가독성을 높이는 것이 좋다.
이렇게 if
, else if
, else
를 잘 활용하면 조건에 따라 다르게 동작하는 코드를 쉽게 작성할 수 있다. 여러 조건을 처리할 때는 else if 문으로 구조화해 가독성을 높이고, 중첩을 줄이는 것이 좋은 습관이다.