溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JS處理數(shù)據(jù)四舍五入(tofixed與round的區(qū)別詳解)

發(fā)布時間:2020-08-26 13:06:16 來源:腳本之家 閱讀:148 作者:為了夢想還在奮斗的小鳥 欄目:web開發(fā)

1 、tofixed方法

toFixed() 方法可把 Number 四舍五入為指定小數(shù)位數(shù)的數(shù)字。例如將數(shù)據(jù)Num保留2位小數(shù),則表示為:toFixed(Num);但是其四舍五入的規(guī)則與數(shù)學中的規(guī)則不同,使用的是銀行家舍入規(guī)則,銀行家舍入:所謂銀行家舍入法,其實質(zhì)是一種四舍六入五取偶(又稱四舍六入五留雙)法。具體規(guī)則如下:

簡單來說就是:四舍六入五考慮,五后非零就進一,五后為零看奇偶,五前為偶應舍去,五前為奇要進一。

顯然這種規(guī)則不符合我們平常在數(shù)據(jù)中處理的方式。為了解決這樣的問題,可以自定義去使用Math.round方法進行自定義式 的實現(xiàn)指定保留多少位數(shù)據(jù)進行處理。

定義和用法

toFixed() 方法可把 Number 四舍五入為指定小數(shù)位數(shù)的數(shù)字。

語法
NumberObject.toFixed(num)

參數(shù) 描述
num 必需。規(guī)定小數(shù)的位數(shù),是 0 ~ 20 之間的值,包括 0 和 20,有些實現(xiàn)可以支持更大的數(shù)值范圍。如果省略了該參數(shù),將用 0 代替。

返回值

返回 NumberObject 的字符串表示,不采用指數(shù)計數(shù)法,小數(shù)點后有固定的 num 位數(shù)字。如果必要,該數(shù)字會被舍入,也可以用 0 補足,以便它達到指定的長度。如果 num 大于 le+21,則該方法只調(diào)用 NumberObject.toString(),返回采用指數(shù)計數(shù)法表示的字符串。

拋出

當 num 太小或太大時拋出異常 RangeError。0 ~ 20 之間的值不會引發(fā)該異常。有些實現(xiàn)支持更大范圍或更小范圍內(nèi)的值。

當調(diào)用該方法的對象不是 Number 時拋出 TypeError 異常。

實例

在本例中,我們將把數(shù)字舍入為僅有一位小數(shù)的數(shù)字:

Show the number 13.37 with one decimal:

<script type="text/javascript">
var num = new Number(13.37);
document.write (num.toFixed(1))
</script>

輸出:

13.4

2 、round方法

round() 方法可把一個數(shù)字舍入為最接近的整數(shù)。例如:Math.round(x),則是將x取其最接近的整數(shù)。其取舍的方法使用的是四舍五入中的方法,符合數(shù)學中取舍的規(guī)則。對于小數(shù)的處理沒有那么便捷,但是可以根據(jù)不同的要求,進行自定義的處理。

例如:對于X進行保留兩位小數(shù)的處理,則可以使用Math.round(X * 100) / 100.進行處理。

定義和用法

round() 方法可把一個數(shù)字舍入為最接近的整數(shù)。

語法
Math.round(x)
參數(shù) 描述
x 必需。必須是數(shù)字。
返回值
與 x 最接近的整數(shù)。

說明
對于 0.5,該方法將進行上舍入。

例如,3.5 將舍入為 4,而 -3.5 將舍入為 -3。

實例
把不同的數(shù)舍入為最接近的整數(shù):

<script type="text/javascript">
document.write(Math.round(0.60) + "<br />")
document.write(Math.round(0.50) + "<br />")
document.write(Math.round(0.49) + "<br />")
document.write(Math.round(-4.40) + "<br />")
document.write(Math.round(-4.60))
</script>

輸出:

1
1
0
-4
-5

以上這篇JS處理數(shù)據(jù)四舍五入(tofixed與round的區(qū)別詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持億速云。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI