封装js千分位加逗号和删除逗号

原文:封装js千分位加逗号和删除逗号

                //封装js千分位加逗号和删除逗号
                alert( format(2545678754.020001) )    //2,545,678,754.03
                alert( format(-2545678754.020001) )    //-2,545,678,754.02
                alert( format(2545678754.000000000009) );    //当值很长的时候会出现数字被截取的问题
                alert( delformat(‘2,545,678,754.03‘) );    //2545678754.03
                alert( delformat(‘-2,545,678,754.03‘) );    //-2545678754.03
                
                function format(num){
                    var sNum=num.toFixed(2)+‘‘,    //将传入的值【四舍五入】保留2位小数
                        re=/(\d+)(\d{3})/;
                        
                    if( /\.\d{3}/.test(num+‘‘) ){
                        if(sNum.charAt(0)!=‘-‘){
                            //如果传入的值不只两位小数,就向前进1保留2位小数,如:1.2400001 -> 1.25
                            sNum=sNum.substring(0,sNum.length-1)+(parseInt(sNum.slice(-1))+1);
                        }
                    }    //向前进1的情况太多,没考虑周全,比如说0.999 -0.0009
                        
                    while(re.test(sNum)){
                        sNum=sNum.replace(re,‘$1,$2‘);
                    }
                    
                    return sNum;
                }
                
                function delformat(sNum){
                    return sNum.replace(/,/g,‘‘);
                }

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。