일반적으로 반복 횟수가 예측 가능할 때는 for
문을 사용하는 것이 가독성이 더 좋고, 반복 횟수를 예측할 수 없으면 while
문을 사용하는 것이 더 적합한 경우가 많다.
for ([초기문]; [조건문]; [증감문])
문장
for 문은 초기문과 증감문이 있어야 하며, 일반적으로 정해진 횟수만큼 반복하는 반복문이다.
while (조건문)
문장
for문이 정해진 횟수만큼 반복한다면, while 문은 조건식이 true 일 경우에 계속해서 반복한다.
조건식에는 비교 또는 논리 연산식이 주로오는데, 조건식이 false가 되면 반복 행위를 멈추고 while문을 종료한다.
do
문장
while (조건문);
조건문을 확인하기 전에 문장은 한번 실행된다. 많은 문장을 실행하기 위해선 { }를 써서 문장들을 묶어 줘야한다. 만약 조건이 참이라면, 그 문장은 다시 실행된다. 매 실행 마지막마다 조건문이 확인된다. 만약 조건문이 거짓일 경우, 실행을 멈추고 do...while 문 바로 아래에 있는 문장으로 넘어가게 한다.
break문은 반복문, switch문, 레이블 문과 결합한 문장을 빠져나올 때 사용한다.
레이블 없이 break문을 쓸 때,
레이블 문을 쓸 때, 특정 레이블 문에서 끝난다.
break문의 문법은 다음과 같다.
- break;
- break 레이블;
(1. 예시)
for (i = 0; i < a.length; i++) {
if (a[i] == theValue) {
break;
}
}
(2. 예시)
var x = 0;
var z = 0
labelCancelLoops: while (true) {
console.log("Outer loops: " + x);
x += 1;
z = 1;
while (true) {
console.log("Inner loops: " + z);
z += 1;
if (z === 10 && x === 10) {
break labelCancelLoops;
} else if (z === 10) {
break;
}
}
}