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日期操作)