BigDecimal 在 JavaScript 中的應用
本文將討論 JavaScript 中 BigDecimal
的用法。
在 JavaScript 中使用 BigDecimal
在研究 BigDecimal
如何在 JavaScript 中工作之前,你必須瞭解 BigDecimal
。BigDecimal
由具有 32 位整數刻度的未縮放任意精度整數值組成。
如果小數位數為零或正數,則為小數點右側的位數。如果整數為負數,則將未縮放的值乘以 10 的負數次方。
BigDecimal
使用二進位制浮點整數的十進位制表示來確定相等和雜湊碼。這與使用精確形式的 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()
方法將一個 BigDecimal
物件值新增到另一個 newD
是 BigDecimal
物件的位置,newD
新增到 k
。
multiply()
方法將一個 BigDecimal
物件值乘以另一個,而 divide()
方法將一個 BigDecimal
值除以另一個值。
將 Double 或 Float 轉換為 BigDecimal
時,必須小心,因為 Double 和 Float 的二進位制小數表示不會簡單地轉換為十進位制表示。
輸出:
BigDecimal
非常適合金融資料算術或任何超過 JavaScript 整數(IEEE-754 浮點)型別的資料。新的 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