Skip to content

noApproximativeNumericConstant

诊断类别:lint/suspicious/noApproximativeNumericConstant

¥Diagnostic Category: lint/suspicious/noApproximativeNumericConstant

自从:v1.3.0

¥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.

¥Examples

¥Invalid

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

¥Valid

let x = Math.PI;
let y = 3.14;
let x = Math.LN10;

¥Related links