我正在做一個項目,我注意到一些奇怪的值。我做了一些測試與各種輸入值,並結束了這一點 - 是什麼在我看來 - 怪異的行爲:1 + 0.72 = 1.72,但2 + 0.72 = 2.7199999999999998爲什麼?
1 + 0.72 = 1.72 // expecting 1.72
2 + 0.72 = 2.7199999999999998 // 2.72
1 + 1.72 = 2.7199999999999998 // 2.72
1 + 2.72 = 3.72 // 3.72
1 + 3.72 = 4.720000000000001 // 4.72
有沒有人對發生了什麼事情,以及如何防止這種情況的線索,那就是,我該怎麼辦確保我得到我期待的?
歡迎浮點數學! –
這不僅僅是javascript。 –
作爲一個自我回答的問題,這有點欠缺。我希望更多的努力使答案成爲規範(並首先檢查模糊) –