자바스크립트 - 스위치 케이스: 초보자 가이드

안녕하세요, 미래의 코딩 슈퍼스타! 자바스크립트의 가장 멋진 결정 도구 중 하나를 배우 준비가 되었나요? 신경 쓰지 말고, 스위치 케이스 문장의 fascinujący 세상으로 뛰어들어 보겠습니다!

JavaScript - Switch Case

스위치 케이스는 무엇인가요?

자세한 내용으로 들어가기 전에 간단한 비유로 시작해 보겠습니다. 얼음이霜가 많은 상점에 가 있다고 상상해 봅시다. 맛을 고를 때, 많은 "if-else" 문장을 사용할 수 있지만, 그렇게 하면 서버에게 "바닐라인가요? 아니요? 초콜릿인가요? 아니요? 딸기인가요?"라고 물어보는 것과 같습니다. "어떤 맛인가요?"라고 물어보고 그 답에 따라 고르는 것이 훨씬 쉬운데, 그게 바로 스위치 케이스가 하는 일입니다!

흐름도

스위치 케이스가 어떻게 작동하는지 시각화하기 위해 흐름도를 보겠습니다:

[시작]
|
v
[表현식 검사]
|
______|_______
|      |       |
v      v       v
[케이스 1][케이스 2][케이스 3]...
|      |       |
v      v       v
[작업 1][작업 2][작업 3]...
|      |       |
|______|_______|
|
v
[기본]
|
v
[끝]

이 흐름도는 스위치 케이스가 표현식을 평가하고 해당 케이스 블록을 실행하는 방식을 보여줍니다. 일치하는 케이스가 없으면 기본 블록(제공되었다면)을 실행합니다.

문법

이제 스위치 케이스 문장의 문법을 분해해 보겠습니다:

switch(expression) {
case value1:
// 실행할 코드
break;
case value2:
// 실행할 코드
break;
case value3:
// 실행할 코드
break;
...
default:
// 케이스가 일치하지 않을 때 실행할 코드
}

각 부분의 의미는 다음과 같습니다:

  • switch(expression): 여기에 표현식을 넣어서 검사합니다.
  • case value: 표현식과 일치할 수 있는 가능한 값들입니다.
  • // 실행할 코드: 케이스가 일치하면 실행할 코드입니다.
  • break: 스위치 블록을 종료하기 위해 사용하는 키워드입니다.
  • default: "if-else" 문장의 "else"와 같습니다. 케이스가 일치하지 않으면 실행됩니다.

예제

스위치 케이스를 실제로 사용해 보는 예제를 몇 가지 보겠습니다!

예제 1: 주간일

let day = 3;
let dayName;

switch (day) {
case 1:
dayName = "월요일";
break;
case 2:
dayName = "화요일";
break;
case 3:
dayName = "수요일";
break;
case 4:
dayName = "목요일";
break;
case 5:
dayName = "금요일";
break;
case 6:
dayName = "토요일";
break;
case 7:
dayName = "일요일";
break;
default:
dayName = "잘못된 일";
}

console.log(dayName); // 출력: 수요일

이 예제에서는 스위치 케이스를 사용하여 요일 번호를 해당 요일 이름으로 변환하고 있습니다. 이렇게 되는 과정은 다음과 같습니다:

  1. day을 3으로 설정합니다.
  2. 스위치 문장은 day의 값을 검사합니다.
  3. case 3에서 일치를 찾습니다.
  4. dayName을 "수요일"로 설정합니다.
  5. break 문장으로 스위치 블록을 종료합니다.
  6. 마지막으로 dayName을 콘솔에 로그합니다.

예제 2: 평가 시스템

간단한 평가 시스템을 만들어 보겠습니다:

let grade = 'B';
let message;

switch(grade) {
case 'A':
message = "Excellent job!";
break;
case 'B':
message = "Great work!";
break;
case 'C':
message = "Good effort!";
break;
case 'D':
message = "You need to study more.";
break;
case 'F':
message = "Please see me after class.";
break;
default:
message = "Invalid grade";
}

console.log(message); // 출력: Great work!

이 예제에서는 다음과 같습니다:

  1. grade를 'B'로 설정합니다.
  2. 스위치 문장은 grade의 값을 검사합니다.
  3. case 'B'에서 일치를 찾습니다.
  4. message를 "Great work!"로 설정합니다.
  5. break 문장으로 스위치 블록을 종료합니다.
  6. message를 콘솔에 로그합니다.

예제 3: 여러 케이스

occasionally, 여러 케이스가 동일한 결과를 가질 수 있습니다. 이렇게 할 수 있습니다:

let fruit = "apple";
let category;

switch(fruit) {
case "apple":
case "pear":
case "banana":
category = "common fruit";
break;
case "mango":
case "papaya":
category = "tropical fruit";
break;
default:
category = "unknown fruit";
}

console.log(category); // 출력: common fruit

이 예제에서는 다음과 같습니다:

  1. fruit를 "apple"로 설정합니다.
  2. 스위치 문장은 fruit의 값을 검사합니다.
  3. 첫 번째 case "apple"에서 일치를 찾습니다.
  4. break 문장이 없기 때문에 다음 줄로 이동합니다.
  5. category를 "common fruit"로 설정합니다.
  6. break 문장으로 스위치 블록을 종료합니다.

스위치 케이스 메서드

스위치 케이스와 관련된 메서드와 설명을 아래 표에 나열했습니다:

메서드 설명
switch 스위치 문장을 시작합니다
case 스위치 문장에서 케이스를 정의합니다
break 스위치 블록을 종료합니다
default 다른 케이스와 일치하지 않을 때 기본 케이스를 정의합니다

스위치 케이스는 코드를 더 읽기 쉽고 효율적으로 만드는 데 도움이 됩니다. 특정 값에 따라 코드를 적절히 이동시키는 트래픽 컨트롤러와 같습니다.

그래서, 이제 스위치 케이스의 힘을 가지고 있습니다! 연습이 완벽을 이루게 하니 자신의 스위치 케이스 문장을 만들어 보세요. perhaps, 재미있는 게임을 만들어 다양한 선택이 다른 결과를 초래하는 것을 시도해 보세요. 가능성은 무한합니다!

행복하게 코딩하세요, 스위치가 함께하길 바랍니다! ??

Credits: Image by storyset