点后我需要有2个符号

时间:2011-11-22 13:33:29

标签: php javascript

  

可能重复:
  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个小数位;

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

我如何在JavaScript中执行相同操作?

4 个答案:

答案 0 :(得分:6)

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

toFixed()是小数点后显示的位数。它也将在0上填充以适合输入大小。

答案 1 :(得分:5)

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

但这不会像PHP的number_format()那样有效。即它将将2.4转换为2.40。为了实现这一目标,您需要更多:

number = number.toString();
if (!number.match(/\./))
    number += '.';
while (!number.match(/\.\d\d$/))
    number += '0';

答案 2 :(得分:1)

您可以使用以下代码

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

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

答案 3 :(得分:0)

简单版本:像这样使用.toFixed()

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

复杂版本,如果你想要number_format()的确切行为是使用this method from php.js

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