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ī)則如下:
簡單來說就是:四舍六入五考慮,五后非零就進(jìn)一,五后為零看奇偶,五前為偶應(yīng)舍去,五前為奇要進(jìn)一。
顯然這種規(guī)則不符合我們平常在數(shù)據(jù)中處理的方式。為了解決這樣的問題,可以自定義去使用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ī)則。對于小數(shù)的處理沒有那么便捷,但是可以根據(jù)不同的要求,進(jìn)行自定義的處理。
例如:對于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ù)(而并非總是將它向上圓整)更加精確,即我們在此所說的“四舍六入”法。
Math.Round()方法使用的銀行家算法的依據(jù),是IEEE Standard 754這個(gè)國際標(biāo)準(zhǔn)
“四舍六入法”可以概括為:“四舍六入五考慮,五后非零就進(jìn)一,五后皆零看奇偶,五前為偶應(yīng)舍去,五前為奇要進(jìn)一?!?/p>
總結(jié)
以上所述是小編給大家介紹的JS使用tofixed與round處理數(shù)據(jù)四舍五入的區(qū)別,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 盤點(diǎn)javascript 正則表達(dá)式中 中括號(hào)的【坑】
- JS處理數(shù)據(jù)四舍五入(tofixed與round的區(qū)別詳解)
- javascript中toFixed()四舍五入使用方法詳解
- js正則表達(dá)式簡單校驗(yàn)方法
- js用正則表達(dá)式篩選年月日的實(shí)例方法
- JS中toFixed()方法四舍五入的精度問題詳解
- JavaScript 正則表達(dá)式詳解
- jmeter實(shí)現(xiàn)接口關(guān)聯(lián)的兩種方式(正則表達(dá)式提取器和json提取器)
- 在nest.js中通過正則表達(dá)式正確設(shè)置驗(yàn)證的方法
- jJavaScript中toFixed()和正則表達(dá)式的坑
相關(guān)文章
layer實(shí)現(xiàn)登錄彈框,登錄成功后關(guān)閉彈框并調(diào)用父窗口的例子
今天小編就為大家分享一篇layer實(shí)現(xiàn)登錄彈框,登錄成功后關(guān)閉彈框并調(diào)用父窗口的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
Javascript前端事件循環(huán)機(jī)制詳細(xì)講解
單線程的同步等待極大影響效率,任務(wù)不得不一個(gè)一個(gè)等待執(zhí)行,對于網(wǎng)頁應(yīng)用是無法接受的。所以Javascript使用事件循環(huán)機(jī)制來解決異步任務(wù)的問題。本文就來講講Javascript的事件循環(huán)機(jī)制,希望對你有所幫助2022-12-12
簡單實(shí)現(xiàn)節(jié)流函數(shù)和防抖函數(shù)過程解析
這篇文章主要介紹了簡單實(shí)現(xiàn)節(jié)流函數(shù)和防抖函數(shù)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10
JavaScript中檢查對象property的存在性方法介紹
這篇文章主要介紹了JavaScript中檢查對象property的存在性方法介紹,本文講解了4種方法來檢查某個(gè)對象o是否擁有property x,需要的朋友可以參考下2014-12-12
小議Function.apply() 之一------(函數(shù)的劫持與對象的復(fù)制)
小議Function.apply() 之一------(函數(shù)的劫持與對象的復(fù)制)...2006-11-11
CORS cross-origin resourse sharing跨域資源共享解決
這篇文章主要為大家介紹了CORS cross-origin resourse sharing跨域資源共享的解決方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
layui加載數(shù)據(jù)顯示loading加載完成loading消失的實(shí)例代碼
今天小編就為大家分享一篇layui加載數(shù)據(jù)顯示loading加載完成loading消失的實(shí)例代碼,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09
JS拖動(dòng)技術(shù) 關(guān)于setCapture使用
JS拖動(dòng)技術(shù) 關(guān)于setCapture使用,學(xué)習(xí)js拖動(dòng)效果的朋友可以參考下。2010-12-12

