for문은 조건식이 참일때까지 반복적으로 작업을 수행하는 루프문입니다.

 for (expr1; expr2; expr3) {
    statement;
 }

첫 번째(expr1)는 루프의 시작을 뜻합니다. 두 번째(expr2)는 조건식인데, expr1의 값에 영향을 받습니다.

expr1의 값을 대입하여 조건식이 참이면 루프를 멈추고, 거짓이면 expr3 값을 증감(++) 또는 차감(--)시키며 루프를 형성합니다.

if문처럼 "짧은 문법"을 사용할 수 있습니다.

 // 괄호 문법
 for (expr1; expr2; expr3) {
    statement;
 }


 // 짧은 문법
 for (expr1; expr2; expr3)
    statement;

<script>
  var arr = [1,2,3,4,5,6,7,8,9];
  for(var i = 0; i < arr.length; i++)
    document.write(arr[i] + "<br/>\n");
  // 결과: 1,2,3,4,5,6,7,8,9

  for(var i = 0; i < arr.length; i++)
  {
    document.write(arr[i] + "<br/>\n");
  }
  // 결과: 1,2,3,4,5,6,7,8,9
</script>

for문내에 중첩도 가능합니다. 다음은 구구단을 구현한 예제입니다.

<script>
  for(var i = 2; i <= 9; i++){
    document.write(i + "단<br/>\n");

    for(var j = 1; j <= 9; j++){
      document.write(i + "*" + j + "=" + i * j + "<br/>\n");
    }
    document.write("<br/>\n");
  }
</script>

C언어처럼 첫 번째 표현식(루프의 시작), 또는 세 번째 표현식을 공백으로 둘 수 있습니다. 그리고 두 번째 표현식(조건식)을 생략할 경우 "참"으로 인식하여 루프를 형성합니다.

<script>
  var i = 1;
  for(; ; i++){
    if(i > 10) {
      break;
    }
    document.write(i + " \n");
  }
  // 결과: 1 2 3 4 5 6 7 8 9 10
</script>

<script>
  for(var i = 1; ; i++){
    if(i > 10) {
      break;
    }
    document.write(i + " \n");
  }
  // 결과: 1 2 3 4 5 6 7 8 9 10
</script>

<script>
  var arr = ['Kalle','Pierre','merray','Cals'];

  for(var i = 0; i < arr.length; ++i){
    document.write(arr[i] + " \n");
  }
  // 결과: Kalle Pierre merray Cals
</script>

0 댓글