javascript - Add thousand seperator and retain decimal place
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
how to print number with commas as thousands separators in Javascript
我有一个函数,可以为一个数字添加一千个分隔符,但是当传入小数时它不能正常工作:
1 2 3 4 5 | function thousandSep(val) { return String(val).split("").reverse().join("") .replace(/(.{3}\B)/g,"$1,") .split("").reverse().join(""); } |
如果我传入10000,我会按预期获得10,000。
但是,通过10,000.00我得到1,000,0.00。
如何修改处理小数的函数?
不要使用
1 2 3 4 5 | function thousandSep(val) { return String(val).split("").reverse().join("") .replace(/(\d{3}\B)/g,"$1,") .split("").reverse().join(""); } |
1 2 3 4 5 6 7 8 9 10 | function format(n, sep, decimals) { sep = sep ||"."; // Default to period as decimal separator decimals = decimals || 2; // Default to 2 decimals return n.toLocaleString().split(sep)[0] + sep + n.toFixed(decimals).split(sep)[1]; } format(4567354.677623); // 4,567,354.68 |