文章詳情頁
JavaScript中的精確財務計算什么是陷阱?
瀏覽:128日期:2024-05-09 16:48:28
(adsbygoogle = window.adsbygoogle || []).push({}); 如何解決JavaScript中的精確財務計算什么是陷阱??
您可能應該將小數(shù)點后的值乘以100,并將所有貨幣值表示為整分。JavaScript中沒有十進制數(shù)據(jù)類型-唯一的數(shù)字數(shù)據(jù)類型是浮點數(shù)。因此,通常建議將錢作為2550美分而不是25.50美元。
考慮一下JavaScript:
var result = 1.0 + 2.0; // (result === 3.0) returns true
但:
var result = 0.1 + 0.2; // (result === 0.3) returns false
該表達式0.1 + 0.2 === 0.3返回false,但幸運的是,浮點數(shù)的整數(shù)運算是精確的,因此可以通過縮放1來避免小數(shù)表示錯誤。
請注意,盡管實數(shù)集是無限的,但只能用JavaScript浮點格式精確表示實數(shù)中的有限數(shù)(準確地說是18,437,736,874,454,810,627)。因此,其他數(shù)字的表示將是實際數(shù)字2的近似值。
解決方法為了創(chuàng)建跨平臺代碼,我想用JavaScript開發(fā)一個簡單的財務應用程序。所需的計算涉及復利和相對較長的十進制數(shù)。我想知道使用JavaScript進行此類數(shù)學運算時應避免的錯誤-如果有可能的話!
標簽:
JavaScript
相關文章:
1. css3 - [CSS] 動畫效果 3D翻轉bug2. python - Django分頁和查詢參數(shù)的問題3. javascript - 百度echarts series數(shù)據(jù)更新問題4. MySQL客戶端吃掉了SQL注解?5. javascript - JS設置Video視頻對象的currentTime時出現(xiàn)了問題,IE,Edge,火狐,都可以設置,反而chrom卻...6. php自學從哪里開始?7. python小白的基礎問題 關于while循環(huán)的嵌套8. 求大神幫我看看是哪里寫錯了 感謝細心解答9. phpstady在win10上運行10. javascript - 圖片能在網站顯示,但控制臺仍舊報錯403 (Forbidden)
排行榜

熱門標簽