Rounding numbers to 2 digits after comma

前端 未结 8 1195
被撕碎了的回忆
被撕碎了的回忆 2020-11-28 12:14

I have no idea how to do this? I\'m adding comma numbers, result is of course always a number with way too many digits after the comma. anyone?

8条回答
  •  粉色の甜心
    2020-11-28 13:03

    UPDATE: Keep in mind, at the time the answer was initially written in 2010, the bellow function toFixed() worked slightly different. toFixed() seems to do some rounding now, but not in the strictly mathematical manner. So be careful with it. Do your tests... The method described bellow will do rounding well, as mathematician would expect.

    • toFixed() - method converts a number into a string, keeping a specified number of decimals. It does not actually rounds up a number, it truncates the number.
    • Math.round(n) - rounds a number to the nearest integer. Thus turning:

    0.5 -> 1; 0.05 -> 0

    so if you want to round, say number 0.55555, only to the second decimal place; you can do the following(this is step-by-step concept):

    • 0.55555 * 100 = 55.555
    • Math.Round(55.555) -> 56.000
    • 56.000 / 100 = 0.56000
    • (0.56000).toFixed(2) -> 0.56

    and this is the code:

    (Math.round(number * 100)/100).toFixed(2);
    

提交回复
热议问题