JS日期操作

 

// 增加天 

function AddDays(date,value) 

{ 

date.setDate(date.getDate()+value); 

} 



// 增加月 

function AddMonths(date,value) 

{ 

date.setMonth(date.getMonth()+value); 

} 



// 增加年 

function AddYears(date,value) 

{ 

date.setFullYear(date.getFullYear()+value); 

} 



// 是否为今天 

function IsToday(date) 

{ 

return IsDateEquals(date,new Date()); 

} 



// 是否为当月 

function IsThisMonth(date) 

{ 

return IsMonthEquals(date,new Date()); 

} 



// 两个日期的年是否相等 

function IsMonthEquals(date1,date2) 

{ 

return date1.getMonth()==date2.getMonth()&&date1.getFullYear()==date2.getFullYear(); 

} 



// 判断日期是否相等 

function IsDateEquals(date1,date2) 

{ 

return date1.getDate()==date2.getDate()&&IsMonthEquals(date1,date2); 

} 



// 返回某个日期对应的月份的天数 

function GetMonthDayCount(date) 

{ 

switch(date.getMonth()+1) 

{ 

case 1:case 3:case 5:case 7:case 8:case 10:case 12: 

return 31; 

case 4:case 6:case 9:case 11: 

return 30; 

} 

//feb: 

date=new Date(date); 

var lastd=28; 

date.setDate(29); 

while(date.getMonth()==1) 

{ 

lastd++; 

AddDays(date,1); 

} 

return lastd; 

} 



// 返回两位数的年份 

function GetHarfYear(date) 

{ 

var v=date.getYear(); 

if(v>9)return v.toString(); 

return "0"+v; 

} 



// 返回月份(修正为两位数) 

function GetFullMonth(date) 

{ 

var v=date.getMonth()+1; 

if(v>9)return v.toString(); 

return "0"+v; 

} 



// 返回日 (修正为两位数) 

function GetFullDate(date) 

{ 

var v=date.getDate(); 

if(v>9)return v.toString(); 

return "0"+v; 

} 



// 替换字符串 

function Replace(str,from,to) 

{ 

return str.split(from).join(to); 

} 



// 格式化日期的表示 

function FormatDate(date,str) 

{ 

str=Replace(str,"yyyy",date.getFullYear()); 

str=Replace(str,"MM",GetFullMonth(date)); 

str=Replace(str,"dd",GetFullDate(date)); 

str=Replace(str,"yy",GetHarfYear(date)); 

str=Replace(str,"M",date.getMonth()+1); 

str=Replace(str,"d",date.getDate()); 

return str; 

} 



// 统一日期格式 

function ConvertDate(str) 

{ 

str=(str+"").replace(/^\s*/g,"").replace(/\s*$/g,""); // 去除前后的空白 

var d; 

if(/^[0-9]{8}$/.test(str)) // 20040226 -> 2004-02-26 

{ 

d=new Date(new Number(str.substr(0,4)),new Number(str.substr(4,2))-1,new Number(str.substr(6,2))); 

if(d.getTime())return d; 

} 

d=new Date(str); 

if(d.getTime())return d; 

d=new Date(Replace(str,"-","/")); 

if(d.getTime())return d; 

return null; 

}  

 

01.

js时间差函数 

<SCRIPT LANGUAGE=javascript> 

alert(addDay(-30,1)); 

alert(addDay(-30,2)); 

alert(addDay(-30,3)); 

alert(addDay(-30,0)); 



function addDay(days,n) 

{ 

//函数说明:days日期差,n代表如下含义。 

var my_date_ago=new Date(new Date() - days * 24 * 60 * 60 * 1000 * -1);//days天的日期 

switch (n) 

{ 

case 1: 

//返回年 

return(my_date_ago.getFullYear()); 

break; 

case 2: 

//返回月 

return(my_date_ago.getMonth()+1); 

break; 

case 3: 

//返回日 

return(my_date_ago.getDate()); 

break; 

default : 

//返回全部 

return(my_date_ago.getFullYear() + "-" + (my_date_ago.getMonth()+1) + "-" + my_date_ago.getDate()); 

break; 

} 

}

 

你可能感兴趣的:(js)