我需要在逗号后四舍五入到两个数字。例子
5000.0000 至 5000
5000.123 至 5000.12
5000.136 至 5000.13
这是怎么做的?
我需要函数 x.toFixed(2); 但如果在两个零的末尾,那么它们不应该显示
我需要在逗号后四舍五入到两个数字。例子
5000.0000 至 5000
5000.123 至 5000.12
5000.136 至 5000.13
这是怎么做的?
我需要函数 x.toFixed(2); 但如果在两个零的末尾,那么它们不应该显示
由于x.toFixed(2)
返回一个字符串,您可以执行以下操作:
function cut(str) {
if (str[str.length-1] == "0")
return str.substr(0, str.length-1);
if (str[str.length-1] == ".")
return str.substr(0, str.length-1);
return str;
}
x = cut(cut(cut(x.toFixed(2))));
不是最优雅的(例如,您可以将函数添加到字符串的原型中),但绝对可以工作。
正如@freakish 所建议的那样,toFixed
对数字进行四舍五入是个好主意。如果你想落地,我建议
parseInt(5000.136*100)/100;
您可以使用此 javascript 函数来舍入数字
function roundNumber(rnum, rlength) {
var newnumber = Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
return parseFloat(newnumber);
}
var num = roundNumber(5000.0000,0); //will return 5000
这个链接可以帮助你
http://www.w3schools.com/jsref/jsref_tofixed.asp
例子
将数字转换为字符串,只保留两位小数:
变量编号 = 5.56789; var n=num.toFixed(2);
n 的结果将是:
5.57