Skip to content
← Back to rules

eslint/no-extra-label 스타일

An auto-fix is available for this rule.

작동 방식

불필요한 레이블을 허용하지 않습니다.

왜 문제가 되는가?

루프 내부에 중첩된 루프나 스위치가 없다면, 루프에 레이블을 붙이는 것은 불필요합니다.

js
A: while (a) {
  break A;
}

같은 결과를 얻기 위해 레이블을 제거하고 break 또는 continue를 레이블 없이 사용할 수 있습니다.
어쩌면 이러한 레이블들은 개발자를 혼란스럽게 만들 수 있습니다. 왜냐하면 레이블은 더 멀리 점프하는 것으로 기대되기 때문입니다.

예시

이 규칙에 부적절한 코드 예시:

js
A: while (a) {
  break A;
}

B: for (let i = 0; i < 10; ++i) {
  break B;
}

C: switch (a) {
  case 0:
    break C;
}

이 규칙에 적절한 코드 예시:

js
while (a) {
  break;
}

for (let i = 0; i < 10; ++i) {
  break;
}

switch (a) {
  case 0:
    break;
}

A: {
  break A;
}

B: while (a) {
  while (b) {
    break B;
  }
}

C: switch (a) {
  case 0:
    while (b) {
      break C;
    }
    break;
}

사용 방법

구성 파일이나 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용하세요:

json
{
  "rules": {
    "no-extra-label": "error"
  }
}
bash
oxlint --deny no-extra-label

참고 자료