반복문에 레이블을 붙이고, break나 continue 구문을 사용해 반복문의 어느 위치에서 작업을 멈추고 어느 위치에서 다시 수행할지를 알려줄 수 있다.

var i, j;

loop1: for (i = 0; i < 3; i++) {
  //첫번째 for문은 "loop1" 레이블을 붙였다.
  loop2: for (j = 0; j < 3; j++) {
    //두번째 for문은 "loop2" 레이블을 붙였다.
    if (i === 1 && j === 1) {
      continue loop1;
    }
    console.log("i = " + i + ", j = " + j);
  }
}

비교) 레이블 문 없이 위의 코드와 동일하게 동작하게 만들기

var i, j;

for (i = 0; i < 3; i++) {
  let skipOuterLoop = false; // 외부 루프를 건너뛰기 위한 플래그
  for (j = 0; j < 3; j++) {
    if (i === 1 && j === 1) {
      skipOuterLoop = true; // 플래그 설정
      break;                // 내부 루프 종료
    }
    console.log("i = " + i + ", j = " + j);
  }
  if (skipOuterLoop) continue; // 플래그가 설정되면 외부 루프의 다음 반복으로 이동
}

레이블을 작성하면, 어떤 구문을 continue 할지, break 할지 명시적으로 설정할 수 있다.

레이블 없이 작성하면, 루프를 계속 진행할지 멈출지에 대한 플래그를 심어준다.