打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
JS 格式化数据
Js代码
  1.   
  2. /**
  3. * 格式化数字显示方式
  4. * 用法
  5. * formatNumber(12345.999,'#,##0.00');
  6. * formatNumber(12345.999,'#,##0.##');
  7. * formatNumber(123,'000000');
  8. * @param num
  9. * @param pattern
  10. */  
  11. function formatNumber(num,pattern){   
  12.   var strarr = num?num.toString().split('.'):['0'];   
  13.   var fmtarr = pattern?pattern.split('.'):[''];   
  14.   var retstr='';   
  15.   
  16.   // 整数部分   
  17.   var str = strarr[0];   
  18.   var fmt = fmtarr[0];   
  19.   var i = str.length-1;     
  20.   var comma = false;   
  21.   for(var f=fmt.length-1;f>=0;f--){   
  22.     switch(fmt.substr(f,1)){   
  23.       case '#':   
  24.         if(i>=0 ) retstr = str.substr(i--,1) + retstr;   
  25.         break;   
  26.       case '0':   
  27.         if(i>=0) retstr = str.substr(i--,1) + retstr;   
  28.         else retstr = '0' + retstr;   
  29.         break;   
  30.       case ',':   
  31.          comma = true;   
  32.          retstr=','+retstr;   
  33.         break;   
  34.      }   
  35.    }   
  36.   if(i>=0){   
  37.     if(comma){   
  38.       var l = str.length;   
  39.       for(;i>=0;i--){   
  40.          retstr = str.substr(i,1) + retstr;   
  41.         if(i>0 && ((l-i)%3)==0) retstr = ',' + retstr;   
  42.        }   
  43.      }   
  44.     else retstr = str.substr(0,i+1) + retstr;   
  45.    }   
  46.   
  47.    retstr = retstr+'.';   
  48.   // 处理小数部分   
  49.    str=strarr.length>1?strarr[1]:'';   
  50.    fmt=fmtarr.length>1?fmtarr[1]:'';   
  51.    i=0;   
  52.   for(var f=0;f<fmt.length;f++){   
  53.     switch(fmt.substr(f,1)){   
  54.       case '#':   
  55.         if(i<str.length) retstr+=str.substr(i++,1);   
  56.         break;   
  57.       case '0':   
  58.         if(i<str.length) retstr+= str.substr(i++,1);   
  59.         else retstr+='0';   
  60.         break;   
  61.      }   
  62.    }   
  63.   return retstr.replace(/^,+/,'').replace(/\.$/,'');   
  64. }   
  65.   
  66. document.write("formatNumber('','')=" + formatNumber('',''));   
  67. document.write("<br/>");   
  68. document.write("formatNumber(123456789012.129,null)=" + formatNumber(123456789012.129,null));   
  69. document.write("<br/>");   
  70. document.write("formatNumber(null,null)=" + formatNumber(null,null));   
  71. document.write("<br/>");   
  72. document.write("formatNumber(123456789012.129,'#,##0.00')=" + formatNumber(123456789012.129,'#,##0.00'));   
  73. document.write("<br/>");   
  74. document.write("formatNumber(123456789012.129,'#,##0.##')=" + formatNumber(123456789012.129,'#,##0.##'));   
  75. document.write("<br/>");   
  76. document.write("formatNumber(123456789012.129,'#0.00')=" + formatNumber(123456789012.129,'#,##0.00'));   
  77. document.write("<br/>");   
  78. document.write("formatNumber(123456789012.129,'#0.##')=" + formatNumber(123456789012.129,'#,##0.##'));   
  79. document.write("<br/>");   
  80. document.write("formatNumber(12.129,'0.00')=" + formatNumber(12.129,'0.00'));   
  81. document.write("<br/>");   
  82. document.write("formatNumber(12.129,'0.##')=" + formatNumber(12.129,'0.##'));   
  83. document.write("<br/>");   
  84. document.write("formatNumber(12,'00000')=" + formatNumber(12,'00000'));   
  85. document.write("<br/>");   
  86. document.write("formatNumber(12,'#.##')=" + formatNumber(12,'#.##'));   
  87. document.write("<br/>");   
  88. document.write("formatNumber(12,'#.00')=" + formatNumber(12,'#.00'));   
  89. document.write("<br/>");   
  90. document.write("formatNumber(0,'#.##')=" + formatNumber(0,'#.##'));   
  91. document.write("<br/>");  
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
JS整数与浮点数的转换
js 获取前天、昨天、今天、明天、后天的时间
JavaScript使用手册
搜索字符串中的邮件地址
JavaScript全局变量与局部变量重名的情况
JavaScript中的标签语句
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服