[JavaScript] 조건문 - if, else if, else

Moon·2024년 11월 6일
0

JavaScript | 기초

목록 보기
25/48
post-thumbnail

자바스크립트의 조건문은 특정 조건에 따라 실행할 코드를 선택할 수 있게 해주는 문법이다. 기본 코드 흐름과 달리 조건문을 활용하면 조건이 만족할 때만 실행되도록 설정할 수 있다. 자바스크립트에서는 이를 조건문 또는 if statement라고 한다. 기본적인 if 문을 시작으로, 조건이 여러 개일 때 유용한 else if 문else 문까지 함께 살펴보자.


기본 if 문

if 문의 기본 구조는 다음과 같다. if라는 키워드 뒤에 소괄호 안에 조건을 넣고, 중괄호 { } 안에 조건이 참일 때 실행할 코드를 작성한다.

// if문 (if statement)
if (조건) {
  동작부분  // 조건이 참일 때 실행되는 코드
}

if는 영어로 “만약”이라는 의미로, 조건이 true일 때만 중괄호 안의 코드가 실행된다는 의미다.

예시: 온도에 따라 얼음이 되는지 확인하기

물이 0도 이하에서 얼기 때문에, 온도가 0 이하일 때 "물이 얼었습니다"라는 메시지를 출력하는 조건을 작성해보자.

let temperature = 0;  // 현재 온도

if (temperature <= 0) {
    console.log("물이 얼었습니다.");  // 온도가 0 이하일 때만 실행
}

위 코드에서는 온도가 0 이하일 때 "물이 얼었습니다."를 출력한다. 만약 온도가 0을 초과하면 조건이 거짓(false)이므로 아무 메시지도 출력되지 않는다.


if와 else

어떤 조건을 만족하지 않을 때도 다른 동작을 실행하고 싶다면 else 문을 추가할 수 있다. elseif 문 조건이 거짓일 때 실행할 코드를 담는다.

if (temperature <= 0) {
    console.log("물이 얼었습니다.");  // 온도가 0 이하일 때 실행
} else {
    console.log("물이 얼지 않았습니다.");  // 온도가 0 초과일 때 실행
}

위 코드에서는 온도가 0 이하일 때"물이 얼었습니다"가 출력되고, 그렇지 않을 때는 "물이 얼지 않았습니다"가 출력된다.


중첩 if 문으로 여러 조건 처리하기

물의 상태는 얼거나(0도 이하), 액체로 존재하거나(0도 초과 100도 미만), 끓는(100도 이상) 조건이 있다. 두 가지 이상의 경우를 다루고 싶을 때, 중첩 if 문을 사용해 조건을 추가할 수 있다.

예시: 중첩 if 문을 사용해 세 가지 조건 처리

if (temperature <= 0) {
    console.log("물이 얼었습니다.");
} else {
    if (temperature >= 100) {
        console.log("물이 끓고 있습니다.");
    } else {
        console.log("물이 얼지도 끓지도 않습니다.");
    }
}

이 코드에서는 세 가지 상태를 확인할 수 있다.

  • 0 이하일 때"물이 얼었습니다."를 출력
  • 100도 이상일 때"물이 끓고 있습니다."를 출력
  • 그 외의 온도에서는 "물이 얼지도 끓지도 않습니다."를 출력

else if를 활용해 더 간단하게 여러 조건 처리하기

중첩 if 문은 기능적으로는 문제 없지만, 코드가 복잡하고 가독성이 떨어질 수 있다. 이때 else if 문을 활용하면 코드가 훨씬 간결해진다. else if는 첫 번째 if 조건이 거짓일 때 다른 조건을 검사하는 역할을 한다.

예시: else if로 여러 조건 처리하기

if (temperature <= 0) {
    console.log("물이 얼었습니다.");
} else if (temperature < 100) {
    console.log("물이 얼지도 끓지도 않습니다.");
} else {
    console.log("물이 끓고 있습니다.");
}
  • 온도가 0 이하일 때: "물이 얼었습니다." 출력
  • 온도가 0 초과 100 미만일 때: "물이 얼지도 끓지도 않습니다." 출력
  • 온도가 100 이상일 때: "물이 끓고 있습니다." 출력

위 코드는 중첩 if 문과 동일하게 동작하면서도, 더 간결하고 읽기 쉬워진다. else 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도라면 어떤 순서로 실행될지 살펴보자.

  1. 첫 번째 조건인 temperature <= 0를 확인. 거짓(false)이므로 다음 조건으로 넘어간다.
  2. 두 번째 조건인 temperature < 100를 확인. 거짓(false)이므로 다시 넘어간다.
  3. 세 번째 조건인 temperature < 150를 확인. 참(true)이므로 "물이 끓고 있습니다."가 출력하고, 나머지 조건은 검사하지 않는다.

이처럼 else if 문은 첫 번째 if 조건이 만족하지 않을 경우 다른 조건을 확인할 때 매우 유용하며, 코드를 훨씬 더 간결하게 만들어준다.


요약

  • if 문은 특정 조건을 만족할 때만 코드를 실행할 수 있게 해준다.
  • elseif 조건이 만족하지 않을 때 실행할 코드를 추가한다.
  • else if는 중첩 if를 사용하지 않고 여러 조건을 확인할 때 유용하다.
  • 복잡한 조건을 다룰 때는 else if 문을 활용해 가독성을 높이는 것이 좋다.

이렇게 if, else if, else를 잘 활용하면 조건에 따라 다르게 동작하는 코드를 쉽게 작성할 수 있다. 여러 조건을 처리할 때는 else if 문으로 구조화해 가독성을 높이고, 중첩을 줄이는 것이 좋은 습관이다.

profile
MOON.DEVLOG

0개의 댓글