在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Linux  HTML/ JS數(shù)字計(jì)算不精確的原因?

JS數(shù)字計(jì)算不精確的原因?

在控制臺(tái)直接輸入:

6999*0.7 // 4899.299999999999

找到一片關(guān)于這方面的文章:http://www.ruanyifeng.com/blo...

但是讀了還是很不理解,涉及到的那兩個(gè)標(biāo)準(zhǔn)看的我頭暈。
有沒有通俗一點(diǎn)的說法,來解釋一下為什么?

回答
編輯回答
怣人

1/3+1/3請(qǐng)用10位小數(shù)表示。

2018年5月12日 09:49
編輯回答
離夢(mèng)

其實(shí)對(duì)于浮點(diǎn)數(shù)的四則運(yùn)算,幾乎所有的編程語言都會(huì)有類似精度誤差的問題,只不過在 C++/C#/Java 這些語言中已經(jīng)封裝好了方法來避免精度的問題,而 JavaScript 是一門弱類型的語言,從設(shè)計(jì)思想上就沒有對(duì)浮點(diǎn)數(shù)有個(gè)嚴(yán)格的數(shù)據(jù)類型,所以精度誤差的問題就顯得格外突出。

2017年6月4日 18:05
編輯回答
心夠野

可以使用js bigdecimal http://blog.csdn.net/xxzblog/...

2018年6月21日 09:40
編輯回答
胭脂淚

用得著了解那么詳細(xì)嗎,反正就是計(jì)算中遇到浮點(diǎn)數(shù)的時(shí)候注意下就好了

2018年5月23日 03:41
編輯回答
蟲児飛

自己思考一下,假設(shè)一共只有 64位 的二進(jìn)制空間,怎么表示任意的一個(gè)小數(shù)?

2018年9月14日 05:24
編輯回答
玩控

計(jì)算機(jī)中計(jì)算以二進(jìn)制計(jì)算,計(jì)算的結(jié)果在二進(jìn)制中超過位數(shù)后就溢出失效了,被省略去調(diào)后就丟失精度了。應(yīng)該是這個(gè)意思吧

2018年1月12日 16:35
編輯回答
別逞強(qiáng)

通俗一點(diǎn)就是人類使用十進(jìn)制,計(jì)算機(jī)使用二進(jìn)制,一個(gè)十進(jìn)制有限小數(shù)轉(zhuǎn)變成二進(jìn)制可能就是一個(gè)無限小數(shù)。無限小數(shù)怎么記?只能砍掉很后面的小數(shù)部位,記錄部分?jǐn)?shù)據(jù)。所以就不精確嘍。

2018年2月5日 23:15
編輯回答
旖襯

通俗點(diǎn)說就是有的小數(shù)用二進(jìn)制無法直接精確表示

2017年8月4日 07:44
編輯回答
瘋浪

首先,計(jì)算機(jī)采用二進(jìn)制處理數(shù)字,不能夠精確表示浮點(diǎn)數(shù)。其次,javascript沒有處理浮點(diǎn)數(shù)精度的方法,很多浮點(diǎn)數(shù)都是無限小數(shù),在運(yùn)算過程中,會(huì)被舍棄掉一部分,造成精度的丟失。所以就會(huì)產(chǎn)生你說的情況。

2017年10月2日 01:57