金额格式化处理千分位金额逗号,隔开
程序员文章站
2022-04-13 15:21:33
方法1.
//处理千分位使用
var dealthousands = function(value) {
if (value === 0) {
return par...
方法1.
//处理千分位使用 var dealthousands = function(value) { if (value === 0) { return parsefloat(value).tofixed(2); } if (value != "") { var num = ""; value += "";//转化成字符串 value = parsefloat(value.replace(/,/g, '')).tofixed(2);//若需要其他小数精度,可将2改成变量 if (value.indexof(".") == -1) { num = value.replace(/\d{1,3}(=(\d{3})+$)/g, function(s) { return s + ','; }); } else { num = value.replace(/(\d)(=(\d{3})+\.)/g, function(s) { return s + ','; }); } } else { num = "" } return num; }
方法2.
/* * formatmoney(s,type) * 功能:金额按千位逗号分割 * 参数:s,需要格式化的金额数值. * 参数:type,(number类型)金额的小数位. * 返回:返回格式化后的数值. */ var formatmoney= (val,type) => { if(val === '' || val === 0) return '0.00' val = number(val) if(isnan(val)) return '' return val.tofixed(type).replace(/(\d)(=(\d{3})+\.)/g, '$1,') }
方法3.
formatmoney = function(s, type) { // if (/[^0-9\.]/.test(s)) // return "0.00"; // if(isnan(val)) return '' if (s == null || s == "" || s == 0) return "0.00"; s = number(s) var result = s; if(s<0){ s=0 - s; } if(isnan(s)) return '' s = s.tostring().replace(/^(\d*)$/, "$1."); s = (s + "00").replace(/(\d*\.\d\d)\d*/, "$1"); s = s.replace(".", ","); var re = /(\d)(\d{3},)/; while (re.test(s)) s = s.replace(re, "$1,$2"); s = s.replace(/,(\d\d)$/, ".$1"); if (type == 0) {// 不带小数位(默认是有小数位) var a = s.split("."); if (a[1] == "00") { s = a[0]; } } if(result<0){ s = '-'+s } return s; }
上一篇: es6技巧写法(持续更新中~~~)
下一篇: 六种主要的垃圾回收算法和思想