码迷,mamicode.com
首页 > Web开发 > 详细

开发中js常用的格式化方法

时间:2016-04-09 17:13:55      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:格式化   js   

1,千分位逗号分开,小数后保留两位小数

   ①使用字符串的拼接

    var formatMoney =    function(v) {
           v = (Math.round((v - 0) * 100)) / 100;
           v = (v == Math.floor(v)) ? v + ".00" : ((v * 10 == Math.floor(v * 10)) ? v + "0": v);
           v = String(v);
           var ps = v.split(‘.‘);
           var whole = ps[0];
           var sub = ps[1] ? ‘.‘ + ps[1] : ‘.00‘;
           var r = /(\d+)(\d{3})/;
           while (r.test(whole)) {
                     whole = whole.replace(r, ‘$1‘ + ‘,‘ + ‘$2‘);
            }
           v = whole + sub;
           if (v == "0.00" || v == "") {
                   return "--"
               }
                   return v;
    }

   ② 使用正则表达式

      var formatMonry =    function(p){
                 return (p.toFixed(2) + ‘‘).replace(/\d{1,3}(?=(\d{3})+(\.\d*)?$)/g, ‘$&,‘);
                }

2,格式化百分比,保留两位小数形成xx.xx%格式

     var renderers = function(v){
                      if (v == ‘‘ || v == 0) {
                            return "0.00";
                          }
                    var f_x = Math.round(v*10000)/ 100;
                    var s_x = f_x.toString();
                    var pos_decimal = s_x.indexOf(‘.‘);
                    if (pos_decimal == -1) {
                             pos_decimal = s_x.length;
                             s_x += ‘.‘;
                             while (s_x.length <= pos_decimal+ 2) {
                                     s_x += ‘0‘;
                                   }
                    }
                    
                    if(pos_decimal != -1){
                         var len = s_x.indexOf(‘.‘);
                         var llen = s_x.substring(len).length-1;
                    
                         var i = 1;
                         while (i<= 2-llen) {
                               s_x += ‘0‘;
                               i++;
                      }
                    }
                return s_x + "%";
            }

 3,时间的格式化

      ① 获取当前系统的时间

          var currentTime =  new Date().format(‘Y-m-d‘);

      ②获取当前时间的前一天(其他的依次类推)

          var preTime = new Date(new_date.getTime() - 1*1000 * 60 * 60 * 24).format(‘Y-m-d‘);

      ③给定年月year,month获取当月的第一天

          var date = new Date(year, month-1, 1).format(‘Y-m-d‘);


          也可以通过js自带方法获取当前年月,详细请查阅js的API

         var currentYear = new Date().getFullYear();

         var currentMonth = new Date().getMonth()+1 ;


          获取当天使这个月的第几天可以使用

          var currentDay =  new Date().getDate();


         获取这个月的总天数

          var total_day = new Date().getDaysInMonth()

      

本文出自 “9884307” 博客,请务必保留此出处http://9894307.blog.51cto.com/9884307/1762012

开发中js常用的格式化方法

标签:格式化   js   

原文地址:http://9894307.blog.51cto.com/9884307/1762012

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!