● 제어문 : 순차적으로 진행되는 흐름을 제어하려는 문장
● 조건문 : 순차적으로 진행되던 흐름 중에 조건에 참, 거짓으로 인해 서로 다른 흐름을 만드는 제어문의 종류
● if : 논리값으로 흐름을 제어
● switch : 조건에 대한 값으로 흐름을 제어 (switch로 만든 제어문 > if문 변경 가능)
● 문법
switch(조건 값){
case 값1:
조건 값 = 값1 경우 실행하는 실행문1;
조건 값 = 값1 경우 실행하는 실행문1;
break; // 값1에 대한 실행문을 끝내는 키워드
case 값2:
조건 값 = 값2 경우 실행하는 실행문2;
조건 값 = 값2 경우 실행하는 실행문2;
break; // 값2에 대한 실행문을 끝내는 키워드
default: // if문의 else와 같은 역할, 필요할때만 선언
조건 값이 어떠한 case 값에도 해당되지 않을때 실행하는 실행문3;
조건 값이 어떠한 case 값에도 해당되지 않을때 실행하는 실행문3;
break; // 마지막 부분은 더이상 미끄러질 공간이 없기에 break; 를 생략하기도 함
}
● break 키워드
break; 를 만나면 해당 스위치 조건문에서 아예 나간다
break; 가 없으면 다음 케이스문의 결과가 매칭되지 않더라고 다음 문장도 실행됨.
마지막 케이스는 아래에 더이상 실행할 실행문이 없어서 따로 break; 를 안써도 됨.
● 예제
let sum = '양';
switch(sum){
case '수':
console.log("90점이상입니다.");
break; //더이상 다른 case문을 실행시키지 않음.
case '우':
console.log("80점이상입니다.");
break;
case '미':
console.log("70점이상입니다.");
break;
case '양':
console.log("60점이상입니다.");
break;
case '가':
console.log("50점이상입니다.");
break;
}
●예제 ( case 여러개 쓸 경우)
// 1, 3, 5, 7, 8, 10, 12월 > 31일
// 2월 > 28일
// 4 , 6, 9, 11월 > 30일
let month = Math.floor((Math.random()*12)+1);
document.write(month);
switch (month) {
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
document.write(month + "월은 31일까지 있습니다.")
break;
case 2:
document.write(month +"월은 28일까지 있습니다.")
break;
case 4:
case 6:
case 9:
case 11:
document.write(month +"월은 30일까지 있습니다.")
break;
}
switch(true){
case [1, 3, 5, 7, 8, 10, 12].includes(month):
document.write("31일까지 있습니다.")
break;
case [2].includes(month):
document.write("28일까지 있습니다.")
break;
case [4, 6, 9, 11].includes(month):
document.write("30일까지 있습니다.")
break;
}
● 예제
// 성적랜덤값 : 0 ~ 100
// A: 90 ~ 100
// B: 80 ~
// C: 70 ~
// D: 60 ~
// F: ~ 59
let score = Math.floor(Math.random()*101);
document.write(score + "점 <br>");
let score1 = parseInt(score/10);
switch(score1){
case 10: case 9:
document.write("A학점입니다.");
break;
case 8:
document.write("B학점입니다.");
break;
case 7:
document.write("C학점입니다.");
break;
case 6:
document.write("D학점입니다.");
break;
default:
document.write("F학점입니다.");
break;
}
'Programming > Javascript' 카테고리의 다른 글
[Javascript] 배열 (0) | 2022.07.11 |
---|---|
[Javascript] 반복문 - while문 do~while문 (0) | 2022.06.22 |
[Javascript] 반복문 - for문 (0) | 2022.06.22 |
[Javascript] 형변환 (0) | 2022.06.15 |
[Javascript] 조건문 - if문 (0) | 2022.06.14 |
댓글