• javascript Date format(js日期格式化)


    方法一:

     1 // 对Date的扩展,将 Date 转化为指定格式的String
     2 // 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, 
     3 // 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 
     4 // 例子: 
     5 // (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 
     6 // (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18 
     7 Date.prototype.Format = function (fmt) { //author: meizz 
     8     var o = {
     9         "M+": this.getMonth() + 1, //月份 
    10         "d+": this.getDate(), //
    11         "h+": this.getHours(), //小时 
    12         "m+": this.getMinutes(), //
    13         "s+": this.getSeconds(), //
    14         "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
    15         "S": this.getMilliseconds() //毫秒 
    16     };
    17     if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    18     for (var k in o)
    19     if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    20     return fmt;
    21 }
    22 调用: 
    23 
    24 var time1 = new Date().Format("yyyy-MM-dd");
    25 var time2 = new Date().Format("yyyy-MM-dd HH:mm:ss"); 

    方法二:

     1 <script language="javascript" type="text/javascript"> 
     2 <!-- /** * 对Date的扩展,将 Date 转化为指定格式的String * 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q)
     3     可以用 1-2 个占位符 * 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) * eg: * (new
     4     Date()).pattern("yyyy-MM-dd hh:mm:ss.S")==> 2006-07-02 08:09:04.423      
     5  * (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04      
     6  * (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04      
     7  * (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04      
     8  * (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18      
     9  */        
    10 Date.prototype.pattern=function(fmt) {         
    11     var o = {         
    12     "M+" : this.getMonth()+1, //月份         
    13     "d+" : this.getDate(), //
    14     "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时         
    15     "H+" : this.getHours(), //小时         
    16     "m+" : this.getMinutes(), //
    17     "s+" : this.getSeconds(), //
    18     "q+" : Math.floor((this.getMonth()+3)/3), //季度         
    19     "S" : this.getMilliseconds() //毫秒         
    20     };         
    21     var week = {         
    22     "0" : "/u65e5",         
    23     "1" : "/u4e00",         
    24     "2" : "/u4e8c",         
    25     "3" : "/u4e09",         
    26     "4" : "/u56db",         
    27     "5" : "/u4e94",         
    28     "6" : "/u516d"        
    29     };         
    30     if(/(y+)/.test(fmt)){         
    31         fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));         
    32     }         
    33     if(/(E+)/.test(fmt)){         
    34         fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]);         
    35     }         
    36     for(var k in o){         
    37         if(new RegExp("("+ k +")").test(fmt)){         
    38             fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));         
    39         }         
    40     }         
    41     return fmt;         
    42 }       
    43      
    44 var date = new Date();      
    45 window.alert(date.pattern("yyyy-MM-dd hh:mm:ss"));
    46 // -->
    47 </script>

    方法三:

      1 Date.prototype.format = function (mask) { 
      2     var d = this;
      3 
      4     var zeroize = function (value, length) {
      5 
      6             if (!length) length = 2;
      7 
      8             value = String(value);
      9 
     10             for (var i = 0, zeros = ''; i < (length - value.length); i++) {
     11 
     12                 zeros += '0';
     13 
     14             }
     15 
     16             return zeros + value;
     17 
     18         };
     19 
     20     return mask.replace(/"[^"]*"|'[^']*'|/b ( ? : d {
     21         1, 4
     22     } | m {
     23         1, 4
     24     } | yy( ? : yy) ? | ([hHMstT]) / 1 ? | [lLZ]) / b / g, function ($0) {
     25 
     26         switch ($0) {
     27 
     28         case 'd':
     29             return d.getDate();
     30 
     31         case 'dd':
     32             return zeroize(d.getDate());
     33 
     34         case 'ddd':
     35             return ['Sun', 'Mon', 'Tue', 'Wed', 'Thr', 'Fri', 'Sat'][d.getDay()];
     36 
     37         case 'dddd':
     38             return ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'][d.getDay()];
     39 
     40         case 'M':
     41             return d.getMonth() + 1;
     42 
     43         case 'MM':
     44             return zeroize(d.getMonth() + 1);
     45 
     46         case 'MMM':
     47             return ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'][d.getMonth()];
     48 
     49         case 'MMMM':
     50             return ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'][d.getMonth()];
     51 
     52         case 'yy':
     53             return String(d.getFullYear()).substr(2);
     54 
     55         case 'yyyy':
     56             return d.getFullYear();
     57 
     58         case 'h':
     59             return d.getHours() % 12 || 12;
     60 
     61         case 'hh':
     62             return zeroize(d.getHours() % 12 || 12);
     63 
     64         case 'H':
     65             return d.getHours();
     66 
     67         case 'HH':
     68             return zeroize(d.getHours());
     69 
     70         case 'm':
     71             return d.getMinutes();
     72 
     73         case 'mm':
     74             return zeroize(d.getMinutes());
     75 
     76         case 's':
     77             return d.getSeconds();
     78 
     79         case 'ss':
     80             return zeroize(d.getSeconds());
     81 
     82         case 'l':
     83             return zeroize(d.getMilliseconds(), 3);
     84 
     85         case 'L':
     86             var m = d.getMilliseconds();
     87 
     88             if (m > 99) m = Math.round(m / 10);
     89 
     90             return zeroize(m);
     91 
     92         case 'tt':
     93             return d.getHours() < 12 ? 'am' : 'pm';
     94 
     95         case 'TT':
     96             return d.getHours() < 12 ? 'AM' : 'PM';
     97 
     98         case 'Z':
     99             return d.toUTCString().match(/[A-Z]+$/);
    100 
    101             // Return quoted strings with the surrounding quotes removed      
    102 
    103         default:
    104             return $0.substr(1, $0.length - 2);
    105 
    106         }
    107 
    108     });
    109 
    110 };
  • 相关阅读:
    eslint 的 env 配置是干嘛使的?
    cookie httpOnly 打勾
    如何定制 antd 的样式(theme)
    剑指 Offer 66. 构建乘积数组
    剑指 Offer 65. 不用加减乘除做加法
    剑指 Offer 62. 圆圈中最后剩下的数字
    剑指 Offer 61. 扑克牌中的顺子
    剑指 Offer 59
    剑指 Offer 58
    剑指 Offer 58
  • 原文地址:https://www.cnblogs.com/zk-zhou/p/6824819.html
Copyright © 2020-2023  润新知