Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

3일만에 끝내는 HTML, CSS, JS 기초

j32. 자바스크립트 Switch 문 본문

JAVASCRIPT

j32. 자바스크립트 Switch 문

눈의나라북범 2016. 6. 5. 15:53

자바스크립트 Switch 문

switch 문은 여러개의 조건으로 분기하여 각기 다른 실행을 할 때 사용됩니다.

switch(수식) { case 1: 실행할 코드; break; case 2: 실행할 코드; break; case n: 실행할 코드; break; default: 위의 어떤 경우에도 해당하지 않을때 실행할 기본 코드; }
switch 수식을 계산한 후, 각 case 의 값과 비교하여, 일치하는 경우가 있으면 그 코드들이 실행됩니다. 일치하는 것이 하나도 없으면, default 의 코드들이 실행됩니다.

예를 들면 getDay() 라는 함수는 요일을 반환하는데, 0 부터 6 까지의 숫자로 요일을 반환합니다.

즉 0 은 일요일, 1 은 월요일, 2 는 화요일 ... 이런 식입니다.

그래서 이들 숫자들을 switch 문을 사용하여 "요일 이름"으로 표시되도록 만들어야 합니다.

<p id="switchResult"></p> <script> var dayNumber = (new Date().getDay() + 1) % 7; var dayName; switch (dayNumber) { case 0: dayName = "일요일"; break; case 1: dayName = "월요일"; break; case 2: dayName = "화요일"; break; case 3: dayName = "수요일"; break; case 4: dayName = "목요일"; break; case 5: dayName = "프라이데이"; break; case 6: dayName = "토요일"; break; } document.getElementById("switchResult").innerHTML = "내일은 " + dayName + "이 됩니다."; </script>

자바스크립트 코드 해석기 (code interpreter) 가 break; 키워드 를 만나면, 스위치 문 블록 밖으로 빠져나갑니다.

이렇게 해서 추가적인 case 테스트를 중지하고 더이상의 코드들이 실행되지 않게 합니다.

일치하는 case 가 발견되면 더이상 다른 case 를 테스트 하지 않고 switch 문 전체를 빠져나가게 됩니다.

default 키워드 는 일치하는 case 가 하나도 없을 때 실행될 코드들을 정의합니다.

어떤 경우에는 switch 블록에서 몇가지의 case 에 대해 똑같은 코드를 실행하고 싶거나, 또는 default 로 바로 보내고 싶을 때가 있습니다.

즉, 여러개의 case 가 하나의 실행 코드들을 공유할 수 있습니다.

<p id="getMonthResult"></p> <script> var monthValue = new Date().getMonth(); var eventText; switch (monthValue) { case 11: case 0: case 1: eventText = "12월부터 다음달 2월까지 동절기 50% 할인이 적용됩니다."; break; case 6: case 7: eventText = "7월 8월 달은 하절기 사전 예약제 입니다."; break; default: eventText = "봄과 가을에는 정상가의 20% 할인된 가격으로 모십니다."; } document.getElementById("getMonthResult").innerHTML = eventText; </script>
위에서 default 를 맨 마지막이 아닌 다른 case 위에 쓸수도 있는데, 이 경우에는 default 에 대한 실행문 이 끝나면 break; 문으로 빠져 나가게 해야 합니다.

[광고] Udemy 동영상 강의로 보기