可能重复:
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中执行相同操作?
答案 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