最近做东西的时候遇到了一些日期格式化的问题,就在网上找,网上大部分都是以原型来给日期对象添加一个format方法,试试了可以用,就拿过来,看以后能否用的到。在做东西的时候,可能会遇到不同的日期类,有js,domino,和java的,这些日期必须是同一种类型的才可以在一起做比较,不然的话就转成字符串在进行比较!
Date.prototype.format = function(format)
{
var o =
{
"M+" : this.getMonth()+1, //month
"d+" : this.getDate(), //day
"h+" : this.getHours(), //hour
"m+" : this.getMinutes(), //minute
"s+" : this.getSeconds(), //second
"q+" : Math.floor((this.getMonth()+3)/3), //quarter
"S" : this.getMilliseconds() //millisecond
}
if(/(y+)/.test(format))
format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
for(var k in o)
if(new RegExp("("+ k +")").test(format))
format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
return format;
}
var ddd = new Date();
document.write (ddd.format('yy-MM-dd hh:mm:ss'));
document.write('<br />')
document.write (ddd.format('yyyy/MM/dd'));