关于js 对数字字符串 或者是数字类型 做一些处理


obj: {
              aa: "1218.74",
              bb: "10000001",
              cc: "60000000001",
              dd: "12223330000001",
            },

如图 想将对象中的 数据改变成 1,000,000,000.00 这样的数据格式 应该是对字符串进行一些 操作 数字类型的话好像不显示小数点 即想转换成 aa: "1,218.74",
bb: "10,000,001.00",
cc: "60,000,000,001.00",
dd: "12,223,330,000,001.00",

你好你的要求已经全部解决

img

a={
              aa: "1218.74",
              bb: "10000001",
              cc: "60000000001",
              dd: "12223330000001",
            }
for(let  i  in  a){
    b=parseFloat(a[i]).toLocaleString()
    if (b.indexOf('.')!=-1){
        a[i]=b
    }
    else{
        a[i]=b+'.00'
    }
}

先把数字转成保留两位小数点,再toLocaleString()

img

for(let key of obj){
  obj[key] = Number(obj[key]).fixed(2).toLocaleString()
}

(
parseFloat(this.form.hxquotaData.data.OUTMSGBODY.APPRV_LMT).toFixed(2) +
""
).replace(/(\d{1,3})(?=(\d{3})+(?:$|.))/g, "$1,");

最后用的这个方法解决了