본문 바로가기
programming/javascript

자바스크립트 반복문 for 와 while 초기값 생략과 비교 comparing loop for and while

by 개코 - 개발과 코딩 2022. 5. 14.

자바스크립트에서 for 반복문은 초기값과 증가값을 생략할 수 있다. 이것을 생략하면 while 구문과 같은 형식으로 반복문을 사용할 수 있다. 필수로 들어가는 것은 조건식이며, 배열에 접근하기 위핸 인덱스 숫자만 넣어주면 된다. for 구문의 유연함을 알 수 있지만, for 구문을 사용할지 while 구문을 사용할지는 상황에 따라 다르다.

자바스크립트 반복문 for 와 while 초기값 생략과 비교
comparing loop for and while

자바스크립트에서 대표적인 반복문은 for와 while이다.

while은 조건식을 기준으로 반복을 하기 떄문에 별도로 반복문을 중지할 코드가 필요할 수 있다.

for문은 초기값과 조건식 증가값에 의해 반복을 한다. 하지만, 초기값과 증가값을 생략해도 반복을 할 수 있다.

즉, for문을 while문처럼 사용할 수도 있는데 구문만 조금 다를 뿐 코드의 동작은 같다.

for 구문과 while 구문

for 구문에서 초기값을 생략하면 while 구문과 같은 형식으로 사용할 수 있다.

초기값과 증가값을 생략한다고 해도 세미콜론을 붙여 조건식은 필수로 작성해 주어야 한다.

어찌 보면 굳이 whlie문과 코드적으로 같다면 while문을 사용하는 것이 좋겠다는 생각이지만, 상황에 따라 골라 사용하는 것은 개발자의 몫이다.

문법은 아래와 같다.

<script>

	for( ; 배열[인덱스] ; ) {
        // 코드 실행
    }
    
    while ( 배열[인덱스] ) {
        // 코드 실행
    }

</script>

샘플코드

위의 내용으로 비슷한 구문으로 같은 동작을 하는 for 구문와 while 구문에 대한 자바스크립트 예제를 만들어 본다.

배열을 2개 만들고 배열 내의 값에 접근하기 위한 인덱스를 증가하는 코드가 하나 들어있다.

반복문 내부의 코드도 같고, 동작도 같다.

for 구문을 사용하느냐 while 구문을 사용하느냐에 따라 차이가 있을 뿐이다.

<!DOCTYPE html>
<html>
    <body>

        <script>

            let _loop = 0;
            
            console.log('----------');

            const arrComp = [
                {"기종":"노트북1", "CPU":"Intel-i5", "RAM":"256MB"},
                {"기종":"노트북2", "CPU":"Intel-i7", "RAM":"512MB"},
                {"기종":"노트북3", "CPU":"AMD", "RAM":"1024MB"}
            ];
            
            _loop = 0;
            for( ; arrComp[_loop] ; ) {
                console.log(_loop + "번째", arrComp[_loop]);
                _loop++;
            }

            console.log('----------');

            const arrStock = ["다우산업", "나스닥", "홍콩H", "상해종합", "니케이225"]; 
            
            _loop = 0;
            while ( arrStock[_loop] ) {
                console.log( _loop + "번째", arrStock[_loop] );
                _loop++;
            } 

            console.log('----------');

        </script>

    </body>
</html>

배열에 접근하기 위해 인덱스를 사용하였고, for 와 while 의 사용법에 차이가 있을 뿐 반복문 내부의 코드는 동일하다.

여기서 for 구문은 초기값과 증가값은 생략이 가능하고 조건식은 필수로 작성해 주어야 하는 것을 알 수 있다.

결과 화면을 보자.

어떻게 사용하든 반복문을 통해 배열에 접근하고 있는 것을 알 수 있다.

반응형

댓글