目次

avoid_js_rounded_ints

JavaScript で丸められる可能性のある整数を避けます。

このルールは Dart 2.0 から利用可能です。

詳細

#

JavaScript にコンパイルされたときに正確に表現できない整数リテラルは避けてください

プログラムが JavaScript にコンパイルされると、intdouble は JavaScript の Number になります。大きすぎる整数 (value < Number.MIN_SAFE_INTEGER または value > Number.MAX_SAFE_INTEGER) は、最も近い Number 値に丸められる可能性があります。

たとえば、1000000000000000001 は JavaScript の Number として正確に表現できないため、代わりに 1000000000000000000 が使用されます。

悪い例

dart
int value = 9007199254740995;

良い例

dart
BigInt value = BigInt.parse('9007199254740995');

使い方

#

avoid_js_rounded_ints ルールを有効にするには、analysis_options.yaml ファイルの linter > rules の下に avoid_js_rounded_ints を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_js_rounded_ints