avoid_js_rounded_ints
避免 JavaScript 四舍五入的整数。
详情
#避免 编译到 JavaScript 时无法精确表示的整数文字。
当程序编译到 JavaScript 时,int
和 double
会变成 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 map 语法来配置 linter 规则,请在 linter > rules 下添加 avoid_js_rounded_ints: true
analysis_options.yaml
yaml
linter:
rules:
avoid_js_rounded_ints: true