TypeScript - Switch 문장: 초보자 가이드
안녕하세요, 미래의 코딩 슈퍼스타! 오늘 우리는 TypeScript에서 가장 유용한 제어 흐름 구조 중 하나인 switch 문장에 대해 배울 거예요. 코드를 한 줄도 작성해 본 적이 없더라도 걱정 마세요 - 저는 이 여정을 단계별로 안내해 드릴게요. 수년간 수많은 학생들을 가르친 경험을 바탕으로 말이죠. 그럼 애호가 음료를 한 잔 마시며 시작해 보세요!
Switch 문장이란?
switch 문장의 구체적인 내용에 들어가기 전에, switch 문장이 무엇이고 왜 이렇게 유용한지 이해해 보겠습니다. 상상해 보세요. 당신이 식당의 웨이터입니다. 고객이 들어와서 요리를 주문합니다. 그들이 주문한 것에 따라, 주방의 다른站位으로 가야 합니다. 이 precisely switch 문장이 프로그래밍에서 하는 일입니다 - 값을 받아서 그 값에 따라 실행할 코드를 결정합니다.
문법: Switch 문장의 레시피
이제 switch 문장의 문법을 살펴보겠습니다. 이것은 우리가 자신만의 switch 문장을 만들기 위해 따를 레시피입니다.
switch (expression) {
case value1:
// 코드를 실행합니다
break;
case value2:
// 코드를 실행합니다
break;
...
default:
// 어떤 케이스도 일치하지 않으면 실행할 코드
}
이를 간단히 설명하자면:
-
switch
: 이 키워드는 TypeScript에게 switch 문장을 시작하고 있음을 알립니다. -
(expression)
: 이는 우리가 점검하는 값입니다. -
case value1:
: expression이 이 값과 일치하면 그 아래 코드가 실행됩니다. -
break
: 이는 TypeScript에게 이 케이스를 마치고 switch 문장을 종료하도록 합니다. -
default
: 이는 if-else 문장의 "else"와 같습니다. 다른 케이스와 일치하지 않으면 실행됩니다.
플로차트: Switch 문장의 길찾이
switch 문장이 어떻게 작동하는지 시각적으로 이해하기 위해 플로차트를 보겠습니다:
+-------------+
| 시작 |
+-------------+
|
v
+-------------------+
| expression 평가 |
+-------------------+
|
v
+---------------------+
| 케이스 1과 일치하나요?|
+---------------------+
| |
예| 아니요|
| |
v v
+------------+ +---------------------+
| 케이스 1 코드 블록 실행| | 케이스 2와 일치하나요? |
+------------+ | |
| 예| 아니요|
| | |
| v v
| +------------+ +-----------+
| | 케이스 2 코드 블록 실행| | 더 많은 케이스 |
| +------------+ +-----------+
| | |
| | |
| | v
| | +-----------+
| | | 기본 코드 블록 실행 |
| | | |
| | +-----------+
| | |
v v v
+-------------+
| 종료 |
+-------------+
이 플로차트는 TypeScript가 각 케이스를 평가하고 일치하는 코드 블록을 실행하는 방법을 보여줍니다.
예제: 프로그래머의 하루
이제 실제 예제로 들어가 보겠습니다. 상상해 보세요. 우리는 요일에 따라 조언을 주는 프로그램을 만들고 있습니다. switch 문장을 어떻게 사용할 수 있을까요?
let day: string = "Monday";
let advice: string;
switch (day) {
case "Monday":
advice = "주간을 강하게 시작하세요!";
break;
case "Tuesday":
advice = "momentum을 유지하세요!";
break;
case "Wednesday":
advice = "반쯤 왔어요!";
break;
case "Thursday":
advice = "금요일 전에 한 번 더 힘을 내세요!";
break;
case "Friday":
advice = "TGIF! 강하게 마무리하세요!";
break;
case "Saturday":
case "Sunday":
advice = "주말을 즐기세요!";
break;
default:
advice = "유효한 요일이 아닙니다!";
}
console.log(advice);
이 예제에서:
- 우리는
day
변수를 선언하고 "Monday"로 설정합니다. - switch 문장을 만들어
day
의 값을 점검합니다. - 각 요일에 대해 다른 조언을 설정합니다.
- 토요일과 일요일은 같은 조언을 가지므로 케이스를 중첩합니다.
- 잘못된 요일이 입력되면 기본 케이스를 통해 처리합니다.
이 코드를 실행하면 "주간을 강하게 시작하세요!"가 출력됩니다.
Break 문장의 중요성
이제 여러분은 "break" 문장에 대해 궁금할 수도 있을 것입니다. 잘못된 친구, break 문장을 빼먹었을 때 어떤 일이 일어나는지 보여드리겠습니다:
let fruit: string = "apple";
let response: string;
switch (fruit) {
case "apple":
response = "일일이 사과 먹고 의사를 멀리하라!";
case "banana":
response = "바나나는 칼륨이 풍부합니다!";
case "orange":
response = "오렌지는 비타민 C가 가득하다!";
default:
response = "이 과일에 대해 잘 알지 못합니다.";
}
console.log(response);
이 코드가 무엇을 출력할까요? "이 과일에 대해 잘 알지 못합니다."를 선택했을 때 맞습니다! 하지만 왜 그런가요?
break
문장이 없으면 TypeScript는 일치한 케이스 이후의 모든 코드를 계속 실행합니다. 이를 "fall-through" 동작이라고 합니다. 우리의 예제에서는 "apple" 케이스가 일치하면, 그 다음 케이스로 이동하여 기본 케이스에 도달합니다.
이 동작은 특정 상황에서 유용할 수 있지만, 종종 원하지 않는 결과를 초래할 수 있습니다. 따라서 break
문장을 기억하는 것이 중요합니다!
결론: 코드에서 Switch를 활용하기
그렇다면 여러분, TypeScript의 switch 문장을 통해 여행을 마친 것입니다! switch 문장의 기본 문법에서 그 내부 작동 방식과 잠재적인 함정까지 다루었습니다. switch 문장은 코드의 흐름을 다양한 값에 따라 제어하는 훌륭한 도구입니다.
프로그래밍 여정을 계속하면서 switch 문장을 귀중한 도구로 활용할 것입니다. 코드를 깨끗하고 효율적으로 만들 수 있을 것입니다.
계속 연습하고, 호기심을 가지고, 당신이 프로처럼 코드를 switch할 때까지 기다리지 마세요! 행복하게 코딩하며, 프로그래밍의 세계에서 매일 새로운 것을 배울 기회를 기억하세요!
메서드 | 설명 |
---|---|
switch |
switch 문장을 시작합니다 |
case |
switch 문장 내의 케이스를 정의합니다 |
break |
케이스가 일치하면 switch 문장을 종료합니다 |
default |
다른 케이스와 일치하지 않으면 실행할 기본 케이스를 정의합니다 |
Credits: Image by storyset