for loop에 라벨 붙이기

less than 1 minute read

중첩 반복문에서 break 사용해보기

for (let i = 0; i < 3; i++) {
  for (let j = 1; j < 3; j++) {
    if (i === 1) break;
    console.log(`${i}${j}`);
  }
}

위와 같이 중첩 반복문의 안에서 break를 사용하면 어떻게 될까?
바로 안 쪽의 for문만 break가 걸린다.

// 실행 결과
01
02
21
22

실행결과는 그래서 다음과 같다. 바깥쪽 for문에 break를 건다면 어떻게 해야할까?

바로 for문에 라벨을 붙이면 된다.

outer: for (let i = 0; i < 3; i++) {
  inner: for (let j = 1; j < 3; j++) {
    if (i === 1) break outer;
    console.log(`${i}${j}`);
  }
}

위와 같이 for문 앞에 라벨을 붙여주면 해당 for문을 조절할 수 있다.

// 실행 결과
01
02

i가 1일 때 outer for문에 break를 사용했기 때문에 01과 02만 나오는 것을 확인할 수 있다.

Leave a comment