JavaScript 조건문 if, else if, else, switch

ctrs·2023년 5월 23일
0
post-custom-banner

조건문 - if, else if, else, switch
특정 조건에 해당되는 경우에만 하위 로직을 실행한다.


1. if문

기본 구조

if (참 혹은 거짓이 들어올 수 있는 조건) {
    메인 로직
 }

1-1. if문 예시 1

let x = 10;

if (x > 0) {
console.log("x는 양수입니다.");
}
// 실행 결과: x는 양수입니다.

let y = 10;

if (y < 0) {
console.log("x는 양수입니다.");
}
// 실행 결과:

1-2. if문 예시 2

let z = "hello world";
// y의 길이가 5보다 크거나 같으면 그 길이를 console.log로 출력하라
if (z.length >= 5) {
console.log(z.length);
}
// 실행 결과: 11


2. if else 문

기본구조

if (참 혹은 거짓이 들어올 수 있는 조건) {
    메인 로직 #1
} else {
    메인 로직 #2
}
// 조건이 참일 경우 메인 로직 #1을 수행하고 거짓일 경우 메인 로직 #2를 수행한다.

if else문 예시

let a = -3;
if (a > 0) {
console.log("a는 양수입니다.");
} else {
console.log("a는 음수입니다.");
}
// 실행 결과: a는 음수입니다.


3. if - else if - else 문
// if (조건1) {
//     메인 로직 #1
// } else if (조건2) {
//     메인 로직 #2
// } else {
//     메인 로직 #3
// }

if - else if - else 문 예시

let b = 10;

if (x < 0) {
console.log('1');
} else if (x >= 0 && x < 10) { // 조건 두개가 모두 참일때 첫번째 로직을 수행
console.log('2');
} else {
console.log('3');
}
// 실행 결과: 3
// b가 5라면 2가 출력되며, b가 -1이라면 1이 출력된다.


4. switch

변수가 값에 따라, 여러 개의 경우(case) 중 하나를 선택한다.
각 case에 해당되지 않을 경우 default에 지정된 로직 수행한다.

case 중 하나에 참이라면 지정된 로직을 수행하고 break 명령어를 통해 switch 문을 빠져나오도록 구성해야 한다.

여러 개의 case 중 몇 개의 break를 쓰지 않았을 경우
break 명령어가 쓰여있지 않은 모든 케이스의 로직을 수행하고 (4-2. 참조)

모든 case에 break 명령어를 쓰지 않았을 경우 모든 case와 default의 로직까지 수행하게 된다. (4-3. 참조)

4-1. 모든 case에 break를 써준 switch 문 예시

let fruit = "사과";

switch (fruit) {
case "사과":
console.log('사과입니다.');
break;
case "바나나":
console.log('바나나입니다.');
break;
case "키위":
console.log('키위입니다.');
break;
default:
console.log('아무것도 아닙니다.');
break;
}
// 실행 결과: 사과입니다.

4-2. 에러, 몇 개의 case에서 break를 빠뜨린 switch 문 예시

let fruit = "사과";

switch (fruit) {
case "사과":
console.log('사과입니다.');
//
case "바나나":
console.log('바나나입니다.');
//
case "키위":
console.log('키위입니다.');
break;
default:
console.log('아무것도 아닙니다.');
break;
}
// 실행 결과:
사과입니다.
바나나입니다.
키위입니다.

4-3. 에러, 모든 case에서 break를 빠뜨린 switch 문 예시

let fruit = "사과";

switch (fruit) {
case "사과":
console.log('사과입니다.');
//
case "바나나":
console.log('바나나입니다.');
//
case "키위":
console.log('키위입니다.');
//
default:
console.log('아무것도 아닙니다.');
break;
}
// 실행 결과:
사과입니다.
바나나입니다.
키위입니다.
아무것도 아닙니다.

마지막 default에서 break를 빼도 4-3과 같은 결과가 나온다.

profile
저장을 습관화
post-custom-banner

0개의 댓글