js 金额的格式化与反格式化

格式化:

function formatMoney(s, n) //s:传入的float数字 ,n:希望返回小数点几位 
{ 
n = n > 0 && n <= 20 ? n : 2; 
s = parseFloat((s + "").replace(/[^\d\.-]/g, "")).toFixed(n) + ""; 
var l = s.split(".")[0].split("").reverse(), 
r = s.split(".")[1]; 
t = ""; 
for(i = 0; i < l.length; i ++ ) 
{ 
t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : ""); 
} 
return t.split("").reverse().join("") + "." + r; 
} 

结果:

formatMoney("12345.675910", 3),返回12,345.676 

反格式化:

function reverseMoney(s) 
{ 
return parseFloat(s.replace(/[^\d\.-]/g, "")); 
} 

结果:

reverseMoney(12,345.676) //返回结果为:12345.676 
    原文作者:李佳明先生
    原文地址: https://www.jianshu.com/p/9d3bc4d62dad
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞