TIL _ 반복문에서 continue, break, label

옥원철·2021년 9월 2일
0

Javascript

목록 보기
3/17
post-thumbnail
post-custom-banner

1. continue

2. break

3. label

4. 활용 - 소수(prime number)를 출력하는 코드 작성



1. continue

  • continue 문은 현재 반복 중인 명령문의 실행을 종료하고, 반복문의 처음으로 돌아가서 다음 코드를 실행하게 합니다.
    → while문 : 다시 조건으로 돌아가 다음 조건을 판별
    → for문 : for(begin; condition; step)문으로 돌아가 step을 실행
let evenNum = [];

for (let i = 1; i < 11; i++) {
  if (i % 2 !== 0 ) {
    continue; // i가 홀수일 때 아래 구문을 건너뛰고 반복문 처음으로 돌아감
  }
  evenNum.push(i);
}

console.log(evenNum);
// [2, 4, 6, 8, 10]


2. break

  • break 문은 break가 포함된 반복문을 완전히 종료시키며, 따라서 반복문 다음에 위치한 코드가 진행됩니다.
let i = 0
while (i < 100) {
  if (i === 19) {
    break; // i가 19가 될 때 반복문 종료, alert 구문이 실행됨
  }
  i++
}

alert(`${i}세 미만 접근금지`)
// 만 19세 미만 접근금지


3. label

  • continue, break과 함께 사용하여 반복문의 어느 위치에서 작업을 멈추고, 어느 위치에서 다시 실행할 것인지 알려줍니다.
loop1 :
for (i = 0; i < 3; i++) {
   for (j = 0; j < 3; j++) {
      if (i === 1 && j === 1) {
        continue loop1;
      }
      console.log('i = ' + i + ', j = ' + j);
   }
}

/*
i = 0, j = 0
i = 0, j = 1
i = 0, j = 2
i = 1, j = 0
i = 2, j = 0 ← "i = 1, j = 1"이 진행되지 않고 loop1부터 다시 실행함
i = 2, j = 1
i = 2, j = 2
*/

loop2 :
for (i = 0; i < 3; i++) {
   for (j = 0; j < 3; j++) {
      if (i === 1 && j === 1) {
        break loop2;
      }
      console.log('i = ' + i + ', j = ' + j);
   }
}

/*
i = 0, j = 0
i = 0, j = 1
i = 0, j = 2
i = 1, j = 0 ← loop2에서 반복문을 종료함
*/


4. 활용 - 소수(prime number)를 출력하는 코드 작성

  • 2부터 n까지의 숫자 중 소수만 출력해주는 코드를 작성해보았습니다.
let n = 20;

isPrime:
for (let i = 2; i <= n; i++) {    // n보다 작은 숫자를 2부터 차례대로 대입
  for (let j = 2; j < i; j++) { 
    if (i % j === 0) {            // i가 j로 나누어 떨어지는 지 판별 → 나누어 떨어지는 j가 있을 경우 소수가 아님
    continue isPrime;             // 소수가 아니므로 'isPrime' 레이블(다음 i)로 넘어감
    }
  }
  console.log(i);                 // 2, 3, 5, 7, 11, 13, 17, 19
}



"작성 내용 중 오류나 오타가 있다면, 댓글로 알려주시면 감사하겠습니다. 주니어 개발자에게 남겨주시는 작은 피드백이 큰 도움이 될 것 같습니다. 고맙습니다 :)"

profile
Obtainment Of The Day
post-custom-banner

0개의 댓글