千元分隔符js 写法

可能不太精致 代码不够优化,

function thousand(text){
      var str=text.toString();
      var prefix=/\¥/g.test(str)?‘¥‘:(/\$/g.test(str)?‘$‘:‘‘);
      var postfix=/\¥|\$/g.test(str)?‘.00‘:‘‘;
      if(str.indexOf(".")!=-1){
         var result=/\./g.exec(str);
         var result2=str.substr(0,result[‘index‘]);
        }else{
          var result2=str;
        }
        var num=result2.replace(/[\D*]/g,‘‘);
        var arr=num.split(‘‘);
        var dot_num=Math.ceil(arr.length/3)-1;
        if(dot_num<0){
          return str;
        }
        for(var i=1,j=0;i<=dot_num;i++,j++){
           arr.splice((arr.length-3*i-j),0,‘,‘);
        }
        return prefix+arr.join(‘‘)+postfix;
}


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