[JS] 이중for문

daun·2022년 5월 29일
0

[오답노트]

목록 보기
5/26

포문만 들어오면 뱅뱅도는 내 머리....
포문 다시 한 번 정리해보자!


  1. for문
<script>
      for(var i = 1; i <= 5; i++){
         for(var j = 1; j <= 5; j++){
         document.write("hellow everybody "+i+j+" <br>")
         }
      }
</script>
// 브라우저결과
hellow everybody 11
hellow everybody 12
hellow everybody 13
hellow everybody 14
...생략
hellow everybody 54
hellow everybody 55
  • 바깥쪽 for문의 바깥쪽 변수 i1번 실행+ 안쪽 변수 j5번 실행
  1. 구구단 만들기
<script>
      for(var i = 2; i <= 9; i++){ //첫번째 자리
         for(var j = 1; j <= 9; j++){ //두번쨰 자리
            document.write(i + "x" + j + "=" + i*j + "<br>");
         }
      }
</script>
//브라우저결과
2x1=2
2x2=4
2x3=6
2x4=8
2x5=10
2x6=12
2x7=14
2x8=16
2x9=18
3x1=3
...생략
9x9=81
  1. countinue문으로 5단만 제외
<script>
      for(var i = 2; i <= 9; i++){
         if(i === 5){
            continue; //1~4단, 6~9단 출력
         }
         for(var j = 1; j <= 9; j++){
            document.write(i + "x" + j + "=" + i*j + "<br>");
         }
      }
</script>
  1. break로 5단부터 제외 가능
<script>
      for(var i = 2; i <= 9; i++){
         if(i === 5){
            break; //1~4단까지 출력, 5단부터 제외
         }
         for(var j = 1; j <= 9; j++){
            document.write(i + "x" + j + "=" + i*j + "<br>");
         }
      }
</script>
  1. 다른 이중 포문 예제
<script>
  function findBugInApples(arr) {
    for (let i = 0; i < arr.length; i++) {
      //arr를 한줄씩 i로 돌려  ["A", "A", "B", "A", "A"],
      //console.log(arr[i]);
      for (let j = 0; j < arr[i].length; j++) {
        //arr안의 요소들을 j로 돌려 A A B A A
        //console.log(arr[i][j]);
        //arr[i][j] i번째의 j번째 요소로 접근
        if (arr[i][j] === "B") {
          //console.log([i, j]);
          return [i, j];
        }
      }
    }
  }
</script>
  • 이중 포문 요소 접근
    arr [ i ][ j ] : arr의 i번째 j번째로 접근
  • i , j = 숫자
    arr[ i ], arr[ j ], arr[ i ][ j ] = 문자
profile
Hello world!

0개의 댓글