課程
/前端開發(fā)
/JavaScript
/JavaScript入門篇
js 0.1+0.2為什么不等于0.3
2022-02-10
源自:JavaScript入門篇 1-1
正在回答
原因在于在JS中采用的IEEE 754的雙精度標(biāo)準(zhǔn),計算機(jī)內(nèi)部存儲數(shù)據(jù)的編碼的時候,0.1在計算機(jī)內(nèi)部根本就不是精確的0.1,而是一個有舍入誤差的0.1。當(dāng)代碼被編譯或解釋后,0.1已經(jīng)被四舍五入成一個與之很接近的計算機(jī)內(nèi)部數(shù)字,以至于計算還沒開始,一個很小的舍入錯誤就已經(jīng)產(chǎn)生了。這也就是 0.1 + 0.2 不等于0.3 的原因。
舉報
JavaScript做為一名Web工程師的必備技術(shù),本教程讓您快速入門
5 回答為什么要加倆個等于號
4 回答不輸入值不等于null么
3 回答為什么 if(mymessage==true)里面是兩個等于號??
2 回答為什么true前用雙等號?
3 回答為什么要寫兩個等號
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2022-02-10
原因在于在JS中采用的IEEE 754的雙精度標(biāo)準(zhǔn),計算機(jī)內(nèi)部存儲數(shù)據(jù)的編碼的時候,0.1在計算機(jī)內(nèi)部根本就不是精確的0.1,而是一個有舍入誤差的0.1。當(dāng)代碼被編譯或解釋后,0.1已經(jīng)被四舍五入成一個與之很接近的計算機(jī)內(nèi)部數(shù)字,以至于計算還沒開始,一個很小的舍入錯誤就已經(jīng)產(chǎn)生了。這也就是 0.1 + 0.2 不等于0.3 的原因。