JS日期加减,日期运算代码
一、日期减去天数等于第二个日期
function cc(dd,dadd){
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
}
cc("12/23/2002",2)
这里不得不做补充,浪费好多时间得出教训:
Javascript 对时间的代号
0-11数字表示1-12月: var a= new Date(2006,5,6) 结果是2006-6-6
0-6表示星期
1-31表示日期
0-23小时
0-59分钟,秒
二。//两个日期的差值(d1 - d2).
function DateDiff(d1,d2){
var day = 24 * 60 * 60 *1000;
try{
var dateArr = d1.split("-");
var checkDate = new Date();
checkDate.setFullYear(dateArr[0], dateArr[1]-1, dateArr[2]);
var checkTime = checkDate.getTime();
var dateArr2 = d2.split("-");
var checkDate2 = new Date();
checkDate2.setFullYear(dateArr2[0], dateArr2[1]-1, dateArr2[2]);
var checkTime2 = checkDate2.getTime();
var cha = (checkTime - checkTime2)/day;
return cha;
}catch(e){
return false;
}
}//end fun
三、应用:
var flag = Array();//全局变量
var start = "2009-01-01";
var end = "2009-02-24";
SetFlag(start,end);
for(var i=0; i
document.write(flag[i]+"\n\r");
}
//设置周期内的日期(数组)
function SetFlag(start,end){
var cdate = Array();
cdate = start.split("-");
var cd = cdate[1]+"/"+cdate[2]+"/"+cdate[0];
var dayNum = DateDiff(end,start);
for(var i=0; i<=dayNum; i++){
flag.push(AddDays(cd,i));
}
}//end fun
//日期加上天数后的新日期.
function AddDays(date,days){
var nd = new Date(date);
nd = nd.valueOf();
nd = nd + days * 24 * 60 * 60 * 1000;
nd = new Date(nd);
//alert(nd.getFullYear() + "年" + (nd.getMonth() + 1) + "月" + nd.getDate() + "日");
var y = nd.getFullYear();
var m = nd.getMonth()+1;
var d = nd.getDate();
if(m <= 9) m = "0"+m;
if(d <= 9) d = "0"+d;
var cdate = y+"-"+m+"-"+d;
return cdate;
}
//两个日期的差值(d1 - d2).
function DateDiff(d1,d2){
var day = 24 * 60 * 60 *1000;
try{
var dateArr = d1.split("-");
var checkDate = new Date();
checkDate.setFullYear(dateArr[0], dateArr[1]-1, dateArr[2]);
var checkTime = checkDate.getTime();
var dateArr2 = d2.split("-");
var checkDate2 = new Date();
checkDate2.setFullYear(dateArr2[0], dateArr2[1]-1, dateArr2[2]);
var checkTime2 = checkDate2.getTime();
var cha = (checkTime - checkTime2)/day;
return cha;
}catch(e){
return false;
}
}//end fun
相关阅读:
sql server2012附加数据库问题解决方法
php自动提交表单的方法(基于fsockopen与curl)
小白救星:联想为Windows用户发布PDF版Win10使用指南
SpringMVC restful 注解之@RequestBody进行json与object转换
css3和jquery实现自定义checkbox和radiobox组件
纯CSS图片预加载实例 摆脱Javascript预载的束缚
Android Handler之消息循环的深入解析
PHP PDOStatement对象bindpram()、bindvalue()和bindcolumn之间的区别
php之CodeIgniter学习笔记
解析PHP中$_FILES的使用以及注意事项
asp.net根据日期算出天数的小例子
win7电脑页面没有毛玻璃效果不变透明怎么办?
MAC将最近使用的应用程序整合到Stack放在一个文件夹里
sprng和struts有什么区别?