Skip to content
← Back to rules

unicorn/numeric-separators-style 스타일

An auto-fix is available for this rule.

작동 방식

숫자 그룹화를 위한 숫자 구분자(예: _) 사용을 강제합니다.

왜 문제인가요?

긴 숫자는 매우 읽기 어려워질 수 있으므로, 숫자를 \로 분리한 그룹으로 나누는 것은 코드의 명확성을 유지하기 위해 중요합니다. 이 규칙은 또한 숫자 구분자의 적절한 사용을 강제하여, 숫자 그룹이 올바른 크기인지 확인합니다.

예시

이 규칙에 대한 잘못된 코드 예시:

javascript
const invalid = [1_23_4444, 1_234.56789, 0xab_c_d_ef, 0b10_00_1111, 0o1_0_44_21, 1_294_28771_2n];

이 규칙에 대한 올바른 코드 예시:

javascript
const valid = [1_234_567, 1_234.567_89, 0xab_cd_ef, 0b1000_1111, 0o10_4421, 1_294_287_712n];

구성

이 규칙은 다음 속성을 가진 구성 객체를 수용합니다.

이진수

type: object

이진 리터럴(예: 0b1010_0001 및 빅인트 변형)에 대한 구성입니다.
숫자가 어떻게 그룹화되고, 언제 구분자가 적용되는지를 제어합니다.

binary.groupLength

type: integer

숫자 구분자를 삽입할 때 그룹당 숫자의 개수입니다.
예를 들어, groupLength 값이 3이면 12345671_234_567처럼 형식화됩니다.

binary.minimumDigits

type: integer

그룹화가 적용되기 전에 요구되는 최소 숫자 개수입니다.
이 임계값보다 적은 숫자를 가진 값은 그룹화되지 않습니다.

16진수

type: object

16진수 리터럴(예: 0xAB_CD, 0Xab_cd, 및 빅인트 변형)에 대한 구성입니다.
숫자가 어떻게 그룹화되고, 언제 구분자가 적용되는지를 제어합니다.

hexadecimal.groupLength

type: integer

숫자 구분자를 삽입할 때 그룹당 숫자의 개수입니다.
예를 들어, groupLength 값이 3이면 12345671_234_567처럼 형식화됩니다.

hexadecimal.minimumDigits

type: integer

그룹화가 적용되기 전에 요구되는 최소 숫자 개수입니다.
이 임계값보다 적은 숫자를 가진 값은 그룹화되지 않습니다.

십진수

type: object

십진수(정수, 소수 부분, 지수 포함)에 대한 구성입니다.
숫자가 어떻게 그룹화되고, 언제 구분자가 적용되는지를 제어합니다.

number.groupLength

type: integer

숫자 구분자를 삽입할 때 그룹당 숫자의 개수입니다.
예를 들어, groupLength 값이 3이면 12345671_234_567처럼 형식화됩니다.

number.minimumDigits

type: integer

그룹화가 적용되기 전에 요구되는 최소 숫자 개수입니다.
이 임계값보다 적은 숫자를 가진 값은 그룹화되지 않습니다.

8진수

type: object

8진수 리터럴(예: 0o1234_5670 및 빅인트 변형)에 대한 구성입니다.
숫자가 어떻게 그룹화되고, 언제 구분자가 적용되는지를 제어합니다.

octal.groupLength

type: integer

숫자 구분자를 삽입할 때 그룹당 숫자의 개수입니다.
예를 들어, groupLength 값이 3이면 12345671_234_567처럼 형식화됩니다.

octal.minimumDigits

type: integer

그룹화가 적용되기 전에 요구되는 최소 숫자 개수입니다.
이 임계값보다 적은 숫자를 가진 값은 그룹화되지 않습니다.

onlyIfContainsSeparator

type: boolean

기본값: false

숫자 리터럴이 이미 구분자(_)를 포함하고 있을 때만 규칙을 적용합니다.

true로 설정하면, 구분자가 없는 숫자는 원래 상태로 유지되며, false로 설정된 경우(기본값), 아직 구분자가 없더라도 해당 숫자에 대해 그룹화를 강제합니다.

사용 방법

구성 파일 또는 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "rules": {
    "unicorn/numeric-separators-style": "error"
  }
}
bash
oxlint --deny unicorn/numeric-separators-style

참고자료