我在我的網站上有一些輸入,代表了浮點數,最多有十個精度位(十進制)。在某些情況下,在客戶端驗證代碼中,我需要比較其中的一些值來確定它們是否相等,並且在這裏,如您所期望的那樣,IEEE754的內在特性使得這種簡單的檢查失敗, 2.0000000000 == 2.0000000001)= true。任意精度JavaScript上的浮點數
我可能會在點的每一邊打破浮點數兩個長整數,使每邊長64位,並手動進行比較,但它看起來非常難看!
任何像樣的Javascript庫來處理任意(或至少保證)的Javascript精度浮點數字?
在此先感謝!
PS:一個基於GWT溶液具有++
此問題可能出現在任何任意精度浮點上,否則您設置相等的精度。這是浮點數的內在本質。 使用任意長度的定點數學。 – kirilloid 2010-01-21 20:05:50
@ kirilloid當然可能會出現,只是認爲它值得詳細說明問題(通常導致更詳細的答案)。不管怎麼說,還是要謝謝你! – opsidao 2010-01-21 20:25:13