关于php:我需要点后有2个符号

I need to have 2 symbols after dot

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
How can I format numbers as money in JavaScript?
Format number to always show 2 decimal places
How do I round to 2 decimal places?

在PHP中,我可以执行以下操作,将小数点四舍五入到2位;

1
2
$number = 3.45667;
$result = number_format($number, 2, '.', ''); // 3.46

我如何在javascript中做到这一点?


1
2
3
var number = 3.45667;
number.toFixed(2)
// returns"3.46"

toFixed()是小数点后出现的位数。它还将填充0以适合输入大小。


1
2
var number = 3.45667;
number = Math.round(100 * number) / 100;

然而,这并不像PHP的number_format()那样工作。也就是说,它不会将2.4转换为2.40。为了使其发挥作用,您需要更多:

1
2
3
4
5
number = number.toString();
if (!number.match(/\./))
    number += '.';
while (!number.match(/\.\d\d$/))
    number += '0';


您可以使用以下代码

1
2
var number = 3.45667;
number.toFixed(2);

如果你想用四舍五入法,先乘以100,然后四舍五入再除以100。


简单版本:使用.tofixed(),如下所示:

1
2
var num= 3.45667;
num.toFixed(2); // 3.46

如果您希望number_format()的准确行为,则复杂的版本使用php.js中的此方法:

1
2
var num= 3.45667;
number_format($number, 2, '.', ''); // 3.46