JS对金额的处理(保留两位小数位, 每隔三位添加‘,’)

这篇博客介绍了如何使用JavaScript处理金额,提供了一种用for循环和正则表达式两种方法来保留两位小数,并在每三位添加逗号作为千位分隔符。Money函数接受一个value参数用于处理的数值,可选num参数用于指定保留的小数位数,默认保留两位。

JS:

一,for循环方式

 function Money(value, num) {
        num = num > 0 && num <= 20 ? num : 2;
        value = parseFloat((value + "").replace(/[^\d\.-]/g, "")).toFixed(num) + ""; //将金额转成比如 123.45的字符串
        var valueArr = value.split(".")[0].split("").reverse() //将字符串的数变成数组
        const valueFloat = value.split(".")[1]; // 取到 小数点后的值
        let valueString = "";
        for (let i = 0; i < valueArr.length; i++) {
            valueString += valueArr[i] + ((i + 1) % 3 == 0 && (i + 1) != valueArr.length ? "," : ""); //循环 取数值并在每三位加个','
        }
        const money = valueString.split("").reverse().join("") + "." + valueFloat; //拼接上小数位
        return money
    }

二,正则方式(保留2位,money为数字组成)

function Money(money){
    return parseFloat(money)
    .toFixed(2)
    .toString()
    .split('')
    .reverse()
    .join('')
    .replace(/(\d{3})/g, '$1,')
    .replace(/\,$/, '')
    .split('
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zeng__Y1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值