【JavaScript】日期加減–DateAdd
<script language="JavaScript">
<!--
//日期加減 timeU︰類型 byMany︰間隔(正負數) dateObj︰日期型態
function DateAdd(timeU,byMany,dateObj) {
var millisecond=1;
var second=millisecond*1000;
var minute=second*60;
var hour=minute*60;
var day=hour*24;
var year=day*365;
var newDate;
var dVal=dateObj.valueOf();
var date=new Date(dateObj); // For months
switch(timeU) {
case "ms": newDate=new Date(dVal+millisecond*byMany); break;
case "s": newDate=new Date(dVal+second*byMany); break; //秒
case "mi": newDate=new Date(dVal+minute*byMany); break; //分
case "h": newDate=new Date(dVal+hour*byMany); break; //時
case "m": newDate=new Date(date.setMonth(date.getMonth() + byMany)); break; //月
case "d": newDate=new Date(dVal+day*byMany); break; //日
case "y": newDate=new Date(dVal+year*byMany); break; //年
}
return newDate;
}
//當下日期與時間
var now = new Date();
var years = now.getYear(); //年
var months = now.getMonth()+1; //月
var days = now.getDate(); //日
var hours = now.getHours(); //時
var minutes = now.getMinutes(); //分
//90天後日期
NextNow = DateAdd("d",90,now);
years = NextNow.getYear();
months = NextNow.getMonth()+1;
days = NextNow.getDate();
hours = NextNow.getHours();
//3個月後日期
ThreeMonth = DateAdd("m",3,now);
//1年後日期
NextYear = DateAdd("y",1,now);
//方法2 使用 setYear() setMonth() setDate()
//90天後日期
var newdate = new Date();
newdate.setDate(newdate.getDate()+90);
//3個月後日期
var newdate1 = new Date();
newdate1.setMonth(newdate1.getMonth()+3);
//1年後日期
var newdate2 = new Date();
newdate2.setYear(newdate2.getYear()+1);
var newdate3 = new Date();
newdate3.setDate(newdate3.getDate()+365); //加365天通用
document.write('目前日期︰'+now.getYear()+'/'+(now.getMonth()+1)+'/'+now.getDate()+'<br/><br/>');
document.write('使用自訂 DateAdd函數 ********************<br/>');
document.write('90天後日期︰'+years+'/'+months+'/'+days+'<br/>');
document.write('3個月後日期︰'+ThreeMonth.getYear()+'/'+(ThreeMonth.getMonth()+1)+'/'+ThreeMonth.getDate()+'<br/>');
document.write('1年後日期︰'+NextYear.getYear()+'/'+(NextYear.getMonth()+1)+'/'+NextYear.getDate()+'<br/><br/><br/>');
document.write('透過內建函數 ********************<br/>');
document.write('90天後日期︰'+newdate.getYear()+'/'+(newdate.getMonth()+1)+'/'+newdate.getDate()+'<br/>');
document.write('3個月後日期︰'+newdate1.getYear()+'/'+(newdate1.getMonth()+1)+'/'+newdate1.getDate()+'<br/>');
document.write('365天日期︰'+newdate3.getYear()+'/'+(newdate3.getMonth()+1)+'/'+newdate3.getDate()+'<br/>');
document.write('1年後日期︰'+newdate2.getYear()+'/'+(newdate2.getMonth()+1)+'/'+newdate2.getDate()+'<br/><br/><br/>');
-->
</script>
執行畫面︰
.jpg)
留言
張貼留言