如何将逗号分隔值转换为一些十进制值四舍五入到两个位置。
Example:
var number = '4,500.02734'
output: 4, 500.03
答案 0 :(得分:1)
function format(a) {
var i=a.indexOf(".");
var f=(parseFloat("0"+a.substring(i)).toFixed(2)).toString();
return a.substring(0,i)+"."+f.substring(2,f.length);
}
format("4,500.02734")
输出4,500.03
。
答案 1 :(得分:1)
这需要两个操作......
将数字字符串解析为Number
实例
const actualNumber = +number.replace(/,/g, '') // produces 4500.02734
将字符串格式化为给定的区域设置,最多包含2个小数位
const formatted = actualNumber.toLocaleString('en-US', {maximumFractionDigits: 2})
var number = '4,500.02734'
const actualNumber = +number.replace(/,/g, '')
const formatted = actualNumber.toLocaleString('en-US', {maximumFractionDigits: 2})
document.write(formatted)
答案 2 :(得分:1)
您可以使用这个简单的函数将您的数字转换为逗号分隔值和十进制数字。
var number = 5000000.245;
document.write(format_number(number));
function format_number(n) {
return n.toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, "$1,");
}