温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2020-06-21 23:05:29 来源:网络 阅读:409 作者:爱笑DE朝 栏目:开发技术

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()

      

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI