for 반복문
while반복문이 조건에 비중을 두는 반복문이라면, for반복문은 조건보다 횟수에 비중을 둘 때 사용하는 반복문입니다.
for반복문 형태
for(초기식; 조건식; 종결식;) {
내용
}
for반복문
for반복문에서는 가장 먼저 초기식이 한번 실행된 후 조건을 비교합니다. 이때 조건식이 거짓이라면 반복문을 빠져나가고, 참이면 문장을 실행하고 종결식을 실행한 후 다시 조건식을 비교합니다.
for반복문의 순서
초기식 실행
조건식 비교 ( 거짓이면 반복문 종료 )
문장을 실행
종결식 실행
2번으로 이동 ( 조건식 비교 )
for반복문 기본형태
for(var i = 0; i < 10; i++) {
내용
}
이와같이 반복문을 사용하면 조건식에 저장된 숫자만큼 쉽게 반복문을 작동시킬 수 있습니다.
for반복문 예
for(var i = 0; i < 5; i++) {
alert(num + '번째 반복문');
}
for반복문의 초기문 변수는 i, j, k, m, n처럼 식별자를 간단하게 한 글자로 만드는 것이 일반적입니다. 물론 i대신 두글자 이상의 변수로 작성해도 문제는 없습니다.
for(var i = 0; i < 10; i++)와 같은 형태의 for반복문을 단순 for반복문이라고 합니다. 0으로 시작해서 10바로 전까지 반복 실행하는 이유는 배열의 인덱스가 0에서 시작하기 때문입니다.
for반복문과 배열 예
var array = ['사과', '귤', '바나나', '망고', '파인애플'];
for(var i = 0; i < array.length; i++) {
alert('과일: ' + array[i]); // 사과, 귤, 바난, 망고, 파인애플 순서로 경고창 생성
}
단순 for반복문을 사용해 배열의 요소를 순서대로 모두 출력할 수 있습니다.
반면에 요소를 반대로 출력하는 것도 가능합니다. 이러한 반복문을 역 for반복문이라고 합니다.
역 for반복문 예
var array = ['사과', '귤', '바나나', '망고', '파인애플'];
for(var i = array.length - 1; i >=0; i--) {
alert('과일: ' + array[i]); // 파인애플, 망고, 바나나, 귤, 사과 순으로 경고창 생성
}
이러한 단순 for반복문, 역 for반복문 같은 형태를 많이 사용하지만 다른 형태도 많이 사용됩니다.
for반복문의 특이한 예
var startTime = new Date().getTime();
for(var cps = 0; new Date().getTime() < startTime + 1000; cps++) {}
alert('초당 연산 횟수: ' + cps);
startTime에서 현재시간을 구하고 반복문을 시작합니다. 반복문은 startTime에서 구해진 시간에 +1초후에 종료됩니다.
그럼 1초동안에 연산속도가 어느정도인지 알 수 있습니다.