### Number rounding in JavaScript

So trivial a task to us humans, almost so to JavaScript as well. Round up your brain cells as we explore number rounding in the language!

#### Basic idea

JavaScript helps lay the foundation for rounding off numbers with the following method:

Math.round(x)

Using it, any supplied argument is rounded off to the **
nearest integer**, and using the ".5" up rule. For example:

Math.round(25.9) //returns 26 Math.round(25.2) //returns 25 Math.round(-2.58) //returns -3

If purging numbers of decimals is all that you require, class dismissed!

#### Taking things a few decimals further

Want to display $25 in standard currency format? How about PI to finity and not beyond? Formatting numbers to specific decimal points entails still Math.round(), but padded with a little multiplication and division. See if you can identify the magic formula involved, with the below examples:

var original=28.453

1) //round "original" to two decimals var result=Math.round(original*100)/100 //returns 28.45

2) // round "original" to 1 decimal var result=Math.round(original*10)/10 //returns 28.5

3) //round 8.111111 to 3 decimals var result=Math.round(8.111111*1000)/1000 //returns 8.111

In case you haven't picked up on it, the formula to round
any number to **x** decimal points is:

1) Multiple the original number by 10^x (10 to the power
of x)

2) Apply Math.round() to the result

3) Divide result by 10^x

Ahh, pre Algebra class all over again...