useNumericSeparators
Summary
Section titled Summary- Diagnostic Category:
lint/nursery/useNumericSeparators
- This rule has a safe fix.
- The default severity of this rule is information.
- Sources:
- Same as
unicorn/numeric-separators-style
- Same as
unreadable_literal
- Same as
Description
Section titled DescriptionEnforce the use of numeric separators in numeric literals.
Enforces a convention of grouping digits using numeric separators.
Long numbers can become difficult to read, so separating groups of digits with an underscore (_
) improves code clarity. This rule also enforces proper usage of the numeric separator, by checking if the groups of digits are of the correct size.
Examples
Section titled ExamplesInvalid
Section titled Invalidvar a = 1234567890;
code-block.js:1:9 lint/nursery/useNumericSeparators FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ Long numeric literal lacks separators.
> 1 │ var a = 1234567890;
│ ^^^^^^^^^^
2 │
ℹ Adding separators helps improve readability and clarity for long numbers.
ℹ Safe fix: Add numeric separators.
1 │ - var·a·=·1234567890;
1 │ + var·a·=·1_234_567_890;
2 2 │
var a = -999_99;
code-block.js:1:10 lint/nursery/useNumericSeparators FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ Inconsistent grouping of digits in numeric literal.
> 1 │ var a = -999_99;
│ ^^^^^^
2 │
ℹ Numbers with inconsistently placed separators can be misleading or confusing.
ℹ Safe fix: Use consistent numeric separator grouping.
1 │ - var·a·=·-999_99;
1 │ + var·a·=·-99_999;
2 2 │
var a = 0.1234567;
code-block.js:1:9 lint/nursery/useNumericSeparators FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ Long numeric literal lacks separators.
> 1 │ var a = 0.1234567;
│ ^^^^^^^^^
2 │
ℹ Adding separators helps improve readability and clarity for long numbers.
ℹ Safe fix: Add numeric separators.
1 │ - var·a·=·0.1234567;
1 │ + var·a·=·0.123_456_7;
2 2 │
var a = 0b11001100;
code-block.js:1:9 lint/nursery/useNumericSeparators FIXABLE ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ℹ Long numeric literal lacks separators.
> 1 │ var a = 0b11001100;
│ ^^^^^^^^^^
2 │
ℹ Adding separators helps improve readability and clarity for long numbers.
ℹ Safe fix: Add numeric separators.
1 │ - var·a·=·0b11001100;
1 │ + var·a·=·0b1100_1100;
2 2 │
Valid
Section titled Validvar a = 1_234_567_890;
var a = -99_999;
var a = 0.123_456_7;
var a = 0b1100_1100;
How to configure
Section titled How to configure{ "linter": { "rules": { "nursery": { "useNumericSeparators": "error" } } }}