我的最终值有一个小问题,我需要舍入到2位小数。
var pri='#price'+$(this).attr('id').substr(len-2);
$.get("sale/price?output=json", { code: v },
function(data){
$(pri).val(Math.round((data / 1.19),2));
});
});
感谢任何帮助。
解决方案:$(pri).val(Math.round((data / 1.19 * 100 )) / 100);
答案 0 :(得分:68)
如果您希望将其视觉格式化为两位小数作为字符串(用于输出),请使用toFixed()
:
var priceString = someValue.toFixed(2);
@David的回答有两个问题:
它将结果保留为浮点数,因此可以显示具有多个小数位的特定结果,例如: 134.1999999999
代替"134.20"
。
如果您的值是整数或舍入到十分之一,您将看不到额外的十进制值:
var n = 1.099;
(Math.round( n * 100 )/100 ).toString() //-> "1.1"
n.toFixed(2) //-> "1.10"
var n = 3;
(Math.round( n * 100 )/100 ).toString() //-> "3"
n.toFixed(2) //-> "3.00"
而且,正如您在上面所看到的,使用toFixed()
也更容易输入。 ;)
答案 1 :(得分:10)
将数字乘以100,舍入,并将得到的数字除以100。