Date.prototype.format = function(format)
{
var o = { //author: meizz
"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;
};alert(new Date().format("hh:mm:ss"));
alert(new Date().format("hh时mm分ss秒"));
alert(new Date().format("yyyy-MM-dd hh:mm:ss"));
{
var o = { //author: meizz
"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;
};alert(new Date().format("hh:mm:ss"));
alert(new Date().format("hh时mm分ss秒"));
alert(new Date().format("yyyy-MM-dd hh:mm:ss"));
* -------------------------------------------------
*
* |-------|-------------------------------|---------------|
* | Char | Description | Example |
* |-------|-------------------------------|---------------|
* | ~y | Year - two digits | 04 |
* |-------|-------------------------------|---------------|
* | ~Y | Year - four digits | 2004 |
* |-------|-------------------------------|---------------|
* | ~d | Day in month | 01 - 31 |
* |-------|-------------------------------|---------------|
* | ~D | Day in month (Full string) | Sunday |
* |-------|-------------------------------|---------------|
* | ~w | Day in week | 0 - 6 |
* |-------|-------------------------------|---------------|
* | ~W | Day in week | 1 - 7 |
* |-------|-------------------------------|---------------|
* | ~k | Month in year | 1 - 12 |
* |-------|-------------------------------|---------------|
* | ~M | Month in year (Full string) | April |
* |-------|-------------------------------|---------------|
* | ~a | AM/PM er | AM, PM |
* |-------|-------------------------------|---------------|
* | ~h | Hour (12 hours) | 02 |
* |-------|-------------------------------|---------------|
* | ~H | Hour (24 hours) | 14 |
* |-------|-------------------------------|---------------|
* | ~m | Minutes | 69 :-) |
* |-------|-------------------------------|---------------|
* | ~s | Seconds | 69 :-) |
* |-------|-------------------------------|---------------|
* | ~S | Milliseconds | 451 |
* |-------|-------------------------------|---------------|
* | ~L | Long value | 1076502654847 |
* |-------|-------------------------------|---------------|
*/function dateTimeToStr (date, stringFormat) {
var monthArray = new Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December");
var dayArray = new Array("Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"); var buffer = new Array();
try{
for (var i = 0; i < stringFormat.length; i++){
var chr1 = stringFormat.charAt(i);
if(chr1 == "~"){
buffer[buffer.length] = getNextToken(stringFormat.charAt(++i), date);
}else{
buffer[buffer.length] = chr1;
}
}
}catch(e){
return null;
} return buffer.join("");
}function getNextToken (chr, date){
var ret = chr;
switch (chr){
case "y":
//year tow digits (04)
ret = new String(date.getFullYear()).substr(2);
break;
case "Y":
//year four digits (2004)
ret = date.getFullYear();
break;
case "d":
//day in month (1 - 31)
ret = date.getDate();
ret = ret < 10 ? "0" + ret : ret;
break;
case "D":
//day in week (Full String)
ret = dayArray[date.getDay()];
break;
case "w":
//day of week (0-6)
ret = date.getDay();
break;
case "W":
//day of week (1-7)
ret = date.getDay() + 1;
break;
case "k":
//month of year (1-12)
ret = date.getMonth() + 1;
ret = ret < 10 ? "0" + ret : ret;
break;
case "M":
//month of year (full string)
ret = monthArray[date.getMonth()];
break;
case "a":
//am/pm er
ret = date.getHours() < 12 ? "AM" : "PM";
break;
case "h":
//hour (12 hours)
ret = date.getHours();
ret = ret > 12 ? ret - 12 : ret;
ret = ret < 10 ? "0" + ret : ret;
break;
case "H":
//hour (24 hours)
ret = date.getHours();
ret = ret < 10 ? "0" + ret : ret;
break;
case "m":
//minutes
ret = date.getMinutes();
ret = ret < 10 ? "0" + ret : ret;
break;
case "s":
//secondes
ret = date.getSeconds();
ret = ret < 10 ? "0" + ret : ret;
break;
case "S":
//milisecondes
ret = date.getMilliseconds();
break;
case "L":
//long value
ret = date.valueOf();
break;
}
return ret;
}alert(new Date(), "~Y-~k-~dT~H:~m:~sZ");