[英]How to solve the issue of round number in JavaScript
我遇到一個問題,如果我輸入9十六次並使用會計js甚至Math.round(9999999999999999)
對其進行格式化,它將變成10000000000000000
。 我該如何解決這個問題。
參考會計js或也可以幫助我解決math.random
的問題。
浮點數不能精確表示所有數字。 一旦您的數字超過9,007,199,254,740,991
(Number.MAX_SAFE_INTEGER),就會立即使用整數。
除Number.MAX_SAFE_INTEGER + 1
(9007199254740992)之外, IEEE-754
浮點格式不能再表示每個連續的整數,因為您不再擁有1s的位; 現在最低位表示2
倍數。 最終,如果我們繼續前進,我們將失去那一點,只能以4
倍數工作。 等等。
您的值遠高於該閾值,因此將四舍五入到最接近的可表示值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.