例如:
将2003-12-15 10:09:54的时间值加上5天变成2003-12-20 10:09:54
该怎么实现呢?
---------------------------------------------------------------
function DateAdd(strInterval, NumDay, dtDate) {
var dtTmp = new Date(dtDate);
if (isNaN(dtTmp)) dtTmp = new Date();
switch (strInterval) {
case "s":return new Date(Date.parse(dtTmp) + (1000 * NumDay));
case "n":return new Date(Date.parse(dtTmp) + (60000 * NumDay));
case "h":return new Date(Date.parse(dtTmp) + (3600000 * NumDay));
case "d":return new Date(Date.parse(dtTmp) + (86400000 * NumDay));
case "w":return new Date(Date.parse(dtTmp) + ((86400000 * 7) * NumDay));
case "m":return new Date(dtTmp.getFullYear(), (dtTmp.getMonth()) + NumDay, dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
case "y":return new Date((dtTmp.getFullYear() + NumDay), dtTmp.getMonth(), dtTmp.getDate(), dtTmp.getHours(), dtTmp.getMinutes(), dtTmp.getSeconds());
}
}
var d = new Date("2003/12/15 10:09:54")
alert(DateAdd("d",5,d).toLocaleDateString())
---------------------------------------------------------------
Javascript:
1<script>
2document.write(new Date(new Date("2003/12/15 10:09:54").getTime()+5*24*60*60*1000).toLocaleString())
3</script>
VBscript:
1<script language="vbs">
2document.write "现在起5天以后的时间:"
3document.write DateAdd("d",5,"2003-12-15 10:09:54")
4</script>
---------------------------------------------------------------
注意月份
1<script language="javascript" type="text/javascript">
2var originalTime = new Date (2003, (12-1), 15, 10, 09, 54); // 月份从 0-11,tmd外国变态老
3var anIntValue = 0;
4var caculatedTime = null;
5
6anIntValue = originalTime.getTime (); // 只能 1970.01.01 之后的日期
7anIntValue += 5 * (24 * 3600 * 1000);
8caculatedTime = new Date (anIntValue);
9alert (caculatedTime);
10</script>
---------------------------------------------------------------
用vb比较方便
1<script>
2document.write DateAdd("d",5,"2003-12-15 10:09:54")
3</script>
---------------------------------------------------------------
同意cloudchen(陈系上.net) ( ) 的,很方便
-
不过这里要修改一下
alert(DateAdd("d",5,d).toLocaleString())