반복문

반복문은 컴퓨터에게 반복적인 작업을 지시하는 방법이다.

반복문의 문법

while

while (조건){
    반복해서 실행할 코드
}
// 조건 값이 true -> false 될 때 까지 반복 실
while(true){
    document.write('coding everybody <br />');
}
// coding everybody 무한반

while(false){
    document.write('coding everybody <br />');
}
// 아무런 결과도 출력하지 않

while문은 while문 뒤에 따라오는 괄호 안의 조건이 참(true)면 중괄호 안의 코드 구간을 반복적으로 실행한다. 조건이 false면 반복문이 실행되지 않는다. 여기서 true와 false는 종료조건이 되는데, 이 값을 변경하는 것을 통해서 반복문을 종료시킬 수 있다. 반복문에서 종료조건을 잘못 지정하면 무한반복이 되거나, 반복문이 실행되지 않는다.

var i = 0;
// 종료조건으로 i의 값이 10보다 작다면 true, 같거나 크다면 false가 된다.

while(i < 10){  
    // 반복이 실행될 때마다 coding everybody <br />이 출력된다.
    // <br /> 줄바꿈을 의미하는 HTML 태그
    document.write('coding everybody <br />');
    // i의 값이 1씩 증가한다.
    i++
}
// i 값이 9까지는 true 10부터는 조건상 false 이므로 출력x

for

for(초기화; 반복조건; 반복이 될 때마다 실행되는 코드){
    반복해서 실행될 코드
}

//예
for(var i = 0; i < 10; i++){   //세미콜론으로 구
    document.write('coding everybody'+i+'<br />');
}
// while문보다 가동성이 좋음 (대체가능한 관계)
// i 값이 9까지는 true 10부터는 조건상 false 이므로 출력x

반복문의 제어

break

반복작업을 중간에 중단시키고 싶다면 break를 사용하면 된다.

for(var i = 0; i < 10; i++){
    if(i === 5) {
        break;              // break 반복문 중
    }
    document.write('coding everybody'+i+'<br />');
}

//coding everybody 0
//coding everybody 1
//coding everybody 2
//coding everybody 3
//coding everybody 4

continue

실행을 즉시 중단 하면서 반복은 지속돼게 하려면 break를 continue로 변경하면 된다.

for(var i = 0; i < 10; i++){
    if(i === 5) {
        continue;     // 5에서 contiune 만나 중지 이후 다시 반복문 실
    }
    document.write('coding everybody'+i+'<br />');
}
/*
coding everybody 0
coding everybody 1
coding everybody 2
coding everybody 3
coding everybody 4
coding everybody 6
coding everybody 7
coding everybody 8
coding everybody 9
*/

반복문의 중첩

반복문 안에는 다시 반복문이 나타날 수 있다.

// 0부터 9까지 변수 i에 순차적으로 값을 할당        
for(var i = 0; i < 10; i++){
    // 0부터 9까지의 변수를 j의 값에 순차적으로 할당
    for(var j = 0; j < 10; j++){    
        // i와 j의 값을 더한 후에 출력
        // String은 숫자인 i와 j의 데이터 타입을 문자로 형태를 변환하는 명령이다. 
        // String()을 제거하고 실행해보면 의미가 좀 더 분명하게 드러날 것이다.
        document.write(String(i)+String(j)+'<br />');
    }
}

Last updated

Was this helpful?