JS中正负数的千位分隔符方法,利用正则表达式

JavaScript06

JS中正负数的千位分隔符方法,利用正则表达式,第1张

使用下面给出的函数可实现千分符支持正负数:

function comma(num) {

    var source = String(num).split(".")//按小数点分成2部分

        source[0] = source[0].replace(new RegExp('(\\d)(?=(\\d{3})+$)','ig'),"$1,")//只将整数部分进行都好分割

    return source.join(".")//再将小数部分合并进来

}

comma(-123456.789)//-123,456.789

思路:添加千位分隔符是从后到前,每3位添加逗号,所以这里输入数据转换成字符串后,利用slice方法的输入负数参数从后取的特点,从后取三位数字保存在数组中,并把取剩后的数据递归重复取值,直到数据不足3位,把剩下一起存入数组中