JavaScript正则表达式实现日期格式化

来源:互联网 发布:剑网三 大叔脸型数据 编辑:程序博客网 时间:2024/05/18 23:28

JavaScript正则表达式实现日期格式化

(function(){function pad(length,val){val = val + "";var valen;if(val.length>length){return val.substring(val.length-length,val.length);}else{return "0".repeat(length-val.length) + val}}var $$ = {$1:function(m){return m.substring(0,m.length/2);},$2:function(m){return m.replace(/%/g,"");},$3:function(m,date){return pad(m.length,date.getFullYear());},$4:function(m,date){return pad(m.length,date.getMonth()+1);},$5:function(m,date){return pad(m.length,date.getDate());},$6:function(m,date){return pad(m.length,date.getHours());},$7:function(m,date){return pad(m.length,date.getHours()%12);},$8:function(m,date){return pad(m.length,date.getMinutes());},$9:function(m,date){return pad(m.length,date.getSeconds());},$10:function(m,date){return pad(m.length,date.getMilliseconds());}};var reg = /((?:%%)+)|((?:%[yYMdHhmsS])+)|([Yy]+)|(M+)|(d+)|(H+)|(h+)|(m+)|(s+)|(S+)/g;formatter = function(format,date){var str = format.replace(reg,function(m,$1,$2,$3,$4,$5,$6,$7,$8,$9,$10,index,ctx){for(var i = 0 ; i < 10 ; i ++){var $i = "$"+i;if(m==eval("$"+i)){return $$[$i](m);}}});return str;}function DateFormat(format){this.format=function(date){formatter(format,date);}}window.DateFormat=DateFormat;})(window,undfined);


0 0
原创粉丝点击