JS使用tofixed與round處理數(shù)據(jù)四舍五入的區(qū)別
1 、tofixed方法
toFixed() 方法可把 Number 四舍五入為指定小數(shù)位數(shù)的數(shù)字。例如將數(shù)據(jù)Num保留2位小數(shù),則表示為:toFixed(Num);但是其四舍五入的規(guī)則與數(shù)學(xué)中的規(guī)則不同,使用的是銀行家舍入規(guī)則,銀行家舍入:所謂銀行家舍入法,其實(shí)質(zhì)是一種四舍六入五取偶(又稱四舍六入五留雙)法。具體規(guī)則如下:
簡(jiǎn)單來(lái)說(shuō)就是:四舍六入五考慮,五后非零就進(jìn)一,五后為零看奇偶,五前為偶應(yīng)舍去,五前為奇要進(jìn)一。
顯然這種規(guī)則不符合我們平常在數(shù)據(jù)中處理的方式。為了解決這樣的問(wèn)題,可以自定義去使用Math.round方法進(jìn)行自定義式 的實(shí)現(xiàn)指定保留多少位數(shù)據(jù)進(jìn)行處理。
2 、 round方法
round() 方法可把一個(gè)數(shù)字舍入為最接近的整數(shù)。例如:Math.round(x),則是將x取其最接近的整數(shù)。其取舍的方法使用的是四舍五入中的方法,符合數(shù)學(xué)中取舍的規(guī)則。對(duì)于小數(shù)的處理沒有那么便捷,但是可以根據(jù)不同的要求,進(jìn)行自定義的處理。
例如:對(duì)于X進(jìn)行保留兩位小數(shù)的處理,則可以使用Math.round(X * 100) / 100.進(jìn)行處理。
ps:四舍五入:JavaScript toFixed() 方法 和 Math.Round 方法比較
Math.Round (vs2005) Math.Round(3.44, 1); //Returns 3.4. Math.Round(3.45, 1); //Returns 3.4. Math.Round(3.46, 1); //Returns 3.5.
在工程技術(shù)、金融和科學(xué)領(lǐng)域,我們往往認(rèn)為將一個(gè)小數(shù)圓整到距離它最近的偶數(shù)(而并非總是將它向上圓整)更加精確,即我們?cè)诖怂f(shuō)的“四舍六入”法。
Math.Round()方法使用的銀行家算法的依據(jù),是IEEE Standard 754這個(gè)國(guó)際標(biāo)準(zhǔn)
“四舍六入法”可以概括為:“四舍六入五考慮,五后非零就進(jìn)一,五后皆零看奇偶,五前為偶應(yīng)舍去,五前為奇要進(jìn)一?!?/p>
總結(jié)
以上所述是小編給大家介紹的JS使用tofixed與round處理數(shù)據(jù)四舍五入的區(qū)別,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- 盤點(diǎn)javascript 正則表達(dá)式中 中括號(hào)的【坑】
- JS處理數(shù)據(jù)四舍五入(tofixed與round的區(qū)別詳解)
- javascript中toFixed()四舍五入使用方法詳解
- js正則表達(dá)式簡(jiǎn)單校驗(yàn)方法
- js用正則表達(dá)式篩選年月日的實(shí)例方法
- JS中toFixed()方法四舍五入的精度問(wèn)題詳解
- JavaScript 正則表達(dá)式詳解
- jmeter實(shí)現(xiàn)接口關(guān)聯(lián)的兩種方式(正則表達(dá)式提取器和json提取器)
- 在nest.js中通過(guò)正則表達(dá)式正確設(shè)置驗(yàn)證的方法
- jJavaScript中toFixed()和正則表達(dá)式的坑
相關(guān)文章
DOM操作原生js 的bug,使用jQuery 可以消除的解決方法
下面小編就為大家?guī)?lái)一篇DOM操作原生js 的bug,使用jQuery 可以消除的解決方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09javascript實(shí)現(xiàn) 百度翻譯 可折疊的分享按鈕列表
這篇文章主要介紹了javascript實(shí)現(xiàn) 百度翻譯 可折疊的分享按鈕列表的方法,需要的朋友可以參考下2015-03-03JavaScript面試技巧之?dāng)?shù)組的一些不low操作
這篇文章主要給大家介紹了關(guān)于JavaScript面試技巧之?dāng)?shù)組的一些不low操作的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03JavaScript獲取頁(yè)面中超鏈接數(shù)量的方法
這篇文章主要介紹了JavaScript獲取頁(yè)面中超鏈接數(shù)量的方法,涉及JavaScript針對(duì)頁(yè)面元素獲取及運(yùn)算的相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11bootstrap3使用bootstrap datetimepicker日期插件
這篇文章主要為大家詳細(xì)介紹了bootstrap3中使用bootstrap datetimepicker日期插件的用法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05