javascript如何解決浮點數相乘出現誤差問題

admin發表於2017-03-18

在js中進行浮點數算數運算的時候可能會出現誤差,例如兩個浮點數相乘就有可能出現誤差,程式碼如下:

[JavaScript] 純文字檢視 複製程式碼
var a=11;
var b=22.9;
console.log(a*b);

以上程式碼的輸出值不是251.9,而是存在一定誤差,程式碼修改如下:

[JavaScript] 純文字檢視 複製程式碼
var a=11;
var b=22.9;
console.log(a*(b*10)/10);

以上程式碼就可以實現精確運算了,實現原理很簡單,就是將浮點數轉換為整數,執行結束之後,再除以擴大的倍數就可以了。

更多相關內容可以參閱javascript浮點數精確計算程式碼一章節。 


相關文章