精度損失のない JavaScript の最高整数値
JavaScript の整数表現能力は、言語での数値表現によって制限されます。
番号Type
JavaScript のユビキタス Number 型は、IEEE 754 に基づく 64 ビット浮動小数点数です。この型が精度を損なうことなく表現できる最大の正確な整数値は、Number.MAX_SAFE_INTEGER です。
2<sup>53</sup> - 1 = 9,007,199,254,740,991
BigInt型
Number.MAX_SAFE_INTEGER より大きい整数の場合、JavaScript は上限のない BigInt 型を提供します。
ビット演算子
ビット演算子とシフト演算子は 32 ビット整数を演算するため、結果が異なることに注意してください。最大安全な整数:
2<sup>31</sup> - 1 = 2,147,483,647
比較
安全な整数 (Number.MAX_SAFE_INTEGER 以下の整数) は、等価演算子を使用して正しく比較できます:
const x = 9007199254740992; const y = -x; console.log(x == x + 1); // true console.log(y == y - 1); // true
ただし、より大きい整数の比較はNumber.MAX_SAFE_INTEGER は予期しない結果を引き起こす可能性があります。
重要なポイント
大きな整数の正確な表現と比較には、BigInt を使用してください。小さい整数の場合は Number 型で十分ですが、ビット単位の演算では安全な整数値の最大値に注意してください。
以上がJavaScript が精度を落とさずに表現できる最大の整数は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。