您的位置:首页 > Web前端 > JavaScript

js中Date类型数据的处理

2011-12-21 18:09 447 查看
一、js中对data的格式化

/**
* js时间对象的格式化;
* eg:format="yyyy-MM-dd hh:mm:ss";
*/
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;
}


二、js中date的时间的转换

/**
*js中更改日期
* y年, m月, d日, h小时, n分钟,s秒
*/
Date.prototype.add = function(part, value){
value *= 1;
if(isNaN(value)) {
value = 0;
}
switch(part) {
case "y":
this.setFullYear(this.getFullYear() + value);
break;
case "m":
this.setMonth(this.getMonth() + value);
break;
case "d":
this.setDate(this.getDate() + value);
break;
case "h":
this.setHours(this.getHours() + value);
break;
case "n":
this.setMinutes(this.getMinutes() + value);
break;
case "s":
this.setSeconds(this.getSeconds() + value);
break;
default:

}
}


对于以上写一个简单的应用实例

var Today = new Date();//创建一个date类型,此类型是当前时间

Today.add("d", -1);//今天减去1

var stryesterday = Today.format("yyyy-MM-dd");//把今天的日期格式化为2012-01-20类型的日期
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: