Post

[JS] JavaScript 공부 3일차

자바스크립트 공부하기 3일차

반복문, switch 문


반복문

프로그래밍에서 동일하거나 유사한 동작이 반복해서 나올 때 반복문을 사용한다.

1부터 100까지 콘솔 출력하기

반복문을 사용하지 않고 1부터 100까지 콘솔을 출력한다고 가정한다면, console.log를 100번 작성해야 한다.

1
2
3
4
5
console.log(1)
console.log(2)
(...)
console.log(99)
console.log(100)

만약 반복문을 사용한다면 100줄의 코드 대신 단 3줄의 코드로 구현할 수 있다.

1
2
3
for (let i = 1; i <= 100; i++) {
    console.log(i);
}

출력결과

1
2
3
4
5
1
2
(...)
99
100

1~100까지 출력된다.

for 반복문 사용 방법

1
2
3
for (초기식; 조건식; 증감식) {
    실행할 명령
}

for 반복문은 조건식과 일치하지 않을 때까지 반복하면서 중괄호에 있는 명령을 수행한다.
아래의 코드를 통해 for 반복문의 역할을 알아보자.

1
2
3
for (let i = 1; ➀ i <= 100; ➁ i++ ➂) {
    console.log(i); ➃
}

➀ 반복문에서 사용할 변수를 초기화하는 식이다. 초기식은 처음 에 한 번만 수행한다. 선언한 변수는 ➂의 증감식으로 값이 변동되기 때문에 ‘카운트 변수’라고도 한다.
➁ 조건식은 언제까지 반복할 것인지 정의하는 식이다. 반복할 때마다 조건을 검사하여 조건이 참이면 반복을 계속하고 조건이 거짓이면 반복을 멈춘다.
➂ 증감식은 카운트 변수를 증가 또는 감소하는 식이다. 주로 증감 연산자인 ++과 –를 주로 사용한다.
➃ 반복 수행의 대상이 되는 명령은 반복할 때마다 실행된다. 중괄호 블록 안에서는 초기식에서 정의한 카운트 변수를 사용할 수 있다.

반복문 강제 종료, 건너뛰기

break 문을 사용하면 조건식에서 정의한 반복문의 종료 조건과 상관없이 반복문을 강제 종료할 수 있다.

1
2
3
4
5
6
7
for (let i = 1; i <= 100; i++) {
    if (i > 10) {
        console.log("반복문 종료");
        break;
    }
    console.log(i);
}

출력결과

1
2
3
4
5
1
2
(...)
10
반복문 종료

위의 예제는 i가 10보다 클 때 반복을 종료하므로 1부터 10까지 숫자만 출력된다.

continue 문을 사용하면 다음 반복 과정으로 건너뛸 수 있다. 반복문의 변수가 짝수일 때만 출력하는 예제이다.

1
2
3
4
5
6
for (let i = 1; i <= 10; i++) {
    if (i % 2 !== 0) {
        continue;
    }
    console.log(i);
}

출력결과

1
2
3
4
5
2
4
6
8
10

i를 2로 나눈 나머지가 0이 아닐 경우 (즉 i는 홀수일 때) if 조건문이 실행되어 continue 된다.
따라서 위의 코드는 i가 짝수일 때만 console.log(i);가 실행된다.

switch 문

switch 문은 중첩 if문처럼 비교할 조건이 많을 때 사용하는 조건문이다.

1
2
3
4
5
6
7
8
9
10
11
12
let fruit = 'apple';

switch (fruit) {
    case 'apple':
        console.log('사과');
        break;
    case 'banana':
        console.log('바나나');
        break;
    default:
        console.log('정의된 과일 목록에 해당되지 않음')
}

출력결과

1
사과

switch 문은 소괄호에 있는 변수인 fruit 값을 기준으로 이 값이 어떤 case에 해당되는지 판단한다.
변수 fruit의 값은 apple 이므로 case: ‘apple’: 의 조건과 일치한다. 해당 case에 작성한 명령을 수행한다.

case 문에서 명령을 수행한 다음 break를 만나면 switch 문을 종료한다.
만약 case 문에 수행할 명령을 작성하고 break 를 작성하지 않으면 실행한 case 문 이후의 명령들을 차례로 수행한다.
case 문에서 명령을 수행한 후에 반드시 break; 를 작성해주자.

3일차 공부 끝