[JavaScript] 조건문 - switch

Moon·2024년 11월 7일
0

JavaScript | 기초

목록 보기
26/48
post-thumbnail

자바스크립트에서 스위치문(Switch Statement)은 특정 값에 따라 코드의 실행 흐름을 다르게 제어할 때 사용한다. 주로 선택지에 따라 결과가 달라져야 하는 경우에 활용할 수 있다. 예를 들어, SNS나 잡지에서 보는 심리 테스트처럼 선택에 따라 다른 결과가 나오는 상황에 유용하다.


스위치문의 기본 구조

스위치문은 switch 키워드를 사용하며, 비교할 값을 소괄호 안에 넣고, 각 조건에 따라 실행할 코드는 case 키워드로 구분한다. 아래는 스위치문의 기본 구조다.

switch (비교값) {
    case 조건값1:
        // 조건값1이 비교값과 일치할 때 실행할 코드
        break;
    case 조건값2:
        // 조건값2가 비교값과 일치할 때 실행할 코드
        break;
    default:
        // 비교값이 모든 조건값과 일치하지 않을 때 실행할 코드
}
  • switch 키워드 뒤에 비교할 값을 괄호 안에 입력한다.
  • case 키워드 뒤에는 비교할 조건 값을 입력하고, 콜론(:) 뒤에 실행할 코드를 작성한다.
  • break스위치문을 종료하는 역할을 하며, 특정 조건이 맞을 때 그 아래 조건이 모두 실행되는 것을 막는다.
  • 마지막에 default 구문은 모든 조건이 맞지 않을 때 실행할 코드를 작성하며, 선택사항이지만 가독성을 위해 사용하는 것이 좋다.

스위치문 예제: 심리 테스트

이제 스위치문을 활용해 SNS에서 흔히 보는 심리 테스트 예제를 작성해보자. 예를 들어, 산불 속에서 4마리의 동물 중 한 마리만 구할 수 있다고 가정했을 때, 어떤 동물을 선택하느냐에 따라 다른 결과를 출력하는 코드를 만들어 보겠다.

// 선택한 동물을 나타내는 변수 (1: 강아지, 2: 고양이, 3: 코알라, 4: 앵무새)
let choice = 2;  // 여기서는 고양이를 선택했다고 가정

// 스위치문을 사용해 선택한 동물에 따라 결과 출력
switch (choice) {
    case 1:
        console.log("강아지를 선택한 당신, 따뜻하고 충직한 성격을 지녔군요.");
        break;
    case 2:
        console.log("고양이를 선택한 당신, 겉은 냉정해 보이지만 속은 따뜻한 사람입니다.");
        break;
    case 3:
        console.log("코알라를 선택한 당신, 느긋하고 여유로운 성격을 지녔네요.");
        break;
    case 4:
        console.log("앵무새를 선택한 당신, 활발하고 사교적인 성격입니다.");
        break;
    default:
        console.log("알 수 없는 선택입니다. 다시 선택해 주세요.");
}

이 코드는 선택지에 따라 다르게 출력되며, choice 변수가 2일 때는 고양이를 선택한 결과가 출력된다. 모든 조건이 맞지 않을 경우에는 default 문이 실행된다.


break문을 지웠을 때의 실행 흐름

만약 각 casebreak문을 생략하면 어떻게 될까? 스위치문은 조건을 만족한 경우, 그 아래 모든 코드가 실행되므로, break문이 없으면 이후의 코드까지 연속적으로 실행된다.

let choice = 2;  // 고양이를 선택했다고 가정

switch (choice) {
    case 1:
        console.log("강아지를 선택한 당신, 따뜻하고 충직한 성격을 지녔군요.");
    case 2:
        console.log("고양이를 선택한 당신, 겉은 냉정해 보이지만 속은 따뜻한 사람입니다.");
    case 3:
        console.log("코알라를 선택한 당신, 느긋하고 여유로운 성격을 지녔네요.");
    case 4:
        console.log("앵무새를 선택한 당신, 활발하고 사교적인 성격입니다.");
    default:
        console.log("알 수 없는 선택입니다. 다시 선택해 주세요.");
}

위 코드에서 choice가 2일 때는 case 2부터 모든 코드가 실행된다. 결과적으로 고양이부터 앵무새, default의 코드까지 전부 실행된다. 따라서 원치 않는 실행을 막기 위해 break을 작성하는 것이 중요하다.


else if와의 비교

  • if문과 else if문조건식이 복잡할 때 사용하기 좋다.
  • 스위치문은 주로 정확한 값에 따라 여러 선택지를 다루어야 할 때 유용하다.

요약

스위치문은 여러 가지 선택지 중 특정 조건을 만족하는 경우를 빠르게 선택할 수 있게 도와주는 문법이다.

break문을 적절히 활용하여 원치 않는 코드가 실행되는 것을 방지할 수 있으며, 특정 조건에서만 동작하게 하는 코드를 작성할 때 유용하다.

profile
MOON.DEVLOG

0개의 댓글