JS中增加日期格式化原型函数之prototype

不点 阅读:1068 2019-11-29 10:26:18 评论:0
/** 
 *  javascript Date format(js日期格式化) 
 *  对Date的扩展,将 Date 转化为指定格式的String 
     月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,  
     年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)  
     例子:  
     (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423  
     (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18  
 
 * 调用:  
    var time1 = new Date().Format("yyyy-MM-dd"); 
    var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss");  
 */ 
Date.prototype.format = function(format) { 
   var date = { 
          "M+": this.getMonth() + 1,    //月份 
          "d+": this.getDate(),            // 
          "h+": this.getHours(),        //小时 
          "m+": this.getMinutes(),        // 
          "s+": this.getSeconds(),        // 
          "q+": Math.floor((this.getMonth() + 3) / 3),    //季度  
          "S+": this.getMilliseconds()    //毫秒  
   }; 
   if (/(y+)/i.test(format)) { 
          format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length)); 
   } 
   for (var k in date) { 
          if (new RegExp("(" + k + ")").test(format)) { 
                 format = format.replace(RegExp.$1, RegExp.$1.length == 1 
                        ? date[k] : ("00" + date[k]).substr(("" + date[k]).length)); 
          } 
   } 
   return format; 
}

 

声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号