[英]Using MathContext objects in BigDecimal divide method
我正在使用Daniel Trebbien的JavaScript BigDecimal庫 (特別是BigDecimal-all-last.min.js )編寫測試用例,並且在不拋出錯誤“ MathContext()Bad”的情況下,似乎無法在除法中使用MathContext對象形式價值”
由於該庫是Java的直接端口,因此我正在使用本文檔 。 由於“表格”(參數2)和“取整模式”(參數4)都是常量,因此我不明白為什么會出現“表格格式錯誤”錯誤。 我的Webstorm IDE看到的常量很好,所以我知道它們在那里。 將“ form”常量更改為“ ENGINEERING”或其他任何方法都無法解決該問題。
var mc = new MathContext(3, BigDecimal.PLAIN, false, BigDecimal.ROUND_HALF_EVEN);
var two = new BigDecimal("2");
var seven = new BigDecimal("7");
var twoSevenths = two.divide(seven, mc); // constructor divide(BigDecimal, MathContext)
console.log(twoSevenths.toString()); // expecting 0.286
您看到我做錯了什么嗎?
**
當然,還有其他划分構造函數可以使用,但是單個MathContext對象的多次重用對於Tiny JavaScript項目是理想的,因此這里是重點。
**
您的代碼中有一個小的錯字。 PLAIN
常量實際上是在MathContext
定義的,因此第一行應為:
var mc = new MathContext(3, MathContext.PLAIN, false, BigDecimal.ROUND_HALF_EVEN);
使用此修復程序,“ 0.286”被記錄到控制台按預期方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.