メインコンテンツにスキップ

avoid_js_rounded_ints

安定版

JavaScriptで丸められた整数を避ける。

詳細

#

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

代わりにYAMLマップ構文を使用してlinterルールを設定している場合は、linter > rulesの下にavoid_js_rounded_ints: trueを追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    avoid_js_rounded_ints: true