JavaScript の BigDecimal
この記事では、JavaScript での BigDecimal
の使用について説明します。
JavaScript での BigDecimal
の使用
JavaScript で BigDecimal
がどのように機能するかを理解する前に、BigDecimal
について知っておく必要があります。BigDecimal
は、32 ビット整数スケールのスケーリングされていない任意精度の整数値で構成されます。
スケールがゼロまたは正の場合、小数点の右側の桁数です。整数が負の場合、スケーリングされていない値に 10 を掛けてスケールの否定の累乗にします。
BigDecimal
は、2 進浮動小数点整数の 10 進表現を使用して、等式とハッシュコードを決定します。これは、正確な形式を使用する Long と Double の数値間の変換とは異なる結果を生成します。
コードを実行する前に、BigDecimal
の npm
パッケージをインストールする必要があることに注意してください。
以下のコードを js
拡張子ファイルとして保存します。
let bDecimal = require('bigdecimal');
let num = new bDecimal.BigInteger('123456abcdefghijklmn7890', 25);
console.log('num is ' + num);
let newD = new bDecimal.BigDecimal(num);
let k = new bDecimal.BigDecimal('4567890.12345612345678901234567890123');
console.log('newD * k = ' + newD.multiply(k));
let two = new bDecimal.BigDecimal('2');
console.log('Average = ' + newD.add(k).divide(two));
multiply()
、add()
、divide()
などのさまざまなメソッドが表示されます。add()
メソッドは、1つの BigDecimal
オブジェクト値を他の値に追加します。newD
は BigDecimal
オブジェクトであり、newD
は k
に追加されます。
multiply()
メソッドは 1つの BigDecimal
オブジェクト値を別の値に乗算しますが、divide()
メソッドは 1つの BigDecimal
値を別の値で除算します。
Double または Float を BigDecimal
に変換する場合、Double および Float の 2 進小数表現は単純に小数表現に変換されないため、注意が必要です。
出力:
BigDecimal
は、財務データの算術演算や、JavaScript 整数(IEEE-754 浮動小数点)型を超えるものに最適です。Decimal は新しい ECMAScript 標準に含まれていませんでした。
Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.
LinkedIn