Skip to content
You are currently reading docs for v1.x. Go to the latest docs if you are using newer version.

noApproximativeNumericConstant

Diagnostic Category: lint/suspicious/noApproximativeNumericConstant

Since: v1.3.0

Sources:

Use standard constants instead of approximated literals.

Usually, the definition in the standard library is more precise than what people come up with or the used constant exceeds the maximum precision of the number type.

let x = 3.141;
code-block.js:1:9 lint/suspicious/noApproximativeNumericConstant  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━

Prefer constants from the standard library.

> 1 │ let x = 3.141;
^^^^^
2 │

Unsafe fix: Use Math.PI instead.

1 - let·x·=·3.141;
1+ let·x·=·Math.PI;
2 2

let x = 2.302;
code-block.js:1:9 lint/suspicious/noApproximativeNumericConstant  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━

Prefer constants from the standard library.

> 1 │ let x = 2.302;
^^^^^
2 │

Unsafe fix: Use Math.LN10 instead.

1 - let·x·=·2.302;
1+ let·x·=·Math.LN10;
2 2

let x = Math.PI;
let y = 3.14;
let x = Math.LN10;
biome.json
{
"linter": {
"rules": {
"suspicious": {
"noApproximativeNumericConstant": "error"
}
}
}
}