1. 程式人生 > >關於JavaScript中.round()函式的運用

關於JavaScript中.round()函式的運用

.round()函式是Math(算數)物件中的一種算數任務,主要用於解決數學中四捨五入的問題。

用法

Math.round(number)
number為數字型別,該函式執行後會返回number經過四捨五入處理後的返回值。

例如:

document.write(Math.round(3.64) )
document.write(Math.round(0.46) )
document.write(Math.round(-4.64) )

執行結果
4
0
-5

分析:
因為該round函式通過判斷number的小數點後的部分且以0.5為界限。

number為正數時。


如果 number 的小數部分大於等於 0.5,返回值是大於 number 的最小整數(即number的整數部分加一)。否則,round 返回小於等於 number 的最大整數(即number的整數部分)。

同理,當number為負數時
可以看做先忽略負號來處裡,最後在結果返回值時補充回來。
如上面的-4.64.可以先忽略負號,經過round()計算完後得5,再在結果返回時補回來即-5

round()拓展

**【通過上述例子我們不難發現round()函式不能對小數點後面的數字進行精確的保留。】
**倘若我們需要對number後的小數點進行有效的保留,我們該怎麼做。

例如將4.6545

進行四捨五入,且保留小數點後面的三位小數
由於Math.round()函式並沒有提供保留小數點的功能,所以需要通過建立函式來進行改造

function Newround(n, m){//此處的n表示要四捨五入的數,m為要保留的小數位數
    Math.round(n * Math.pow(10, m)) / Math.pow(10, m) ;
}
//此處先將n乘以10的m次方,將要保留的小數位數的小數部分轉成整數部分,然後再用.round()進行四捨五入處理。最後再除以10的m次方還原小數部分

Newround(4.6545, 3); // 得到 4.655


//Math.pow()函式為冪函式
//用法
Math.pow(n,m)//返回的是n的m次方的值 //例子: Math.pow(5,3)//返回值5*5*5即125

以上是博主對JavaScript中的.round()函式的理解,如有其它經驗,請各位大神補充,謝謝