今日からn日後の年月日を求める
説明
今日からn日後の年月日を求めるにはDateオブジェクトを生成する時に引数としてミリ秒を渡します。n日後を求めるので1日あたりのミリ秒(86400000 = 1000*60*60*24)と現在のミリ秒((new Date().getTime())を加算し、new Date()で新しいDateオブジェクトを作成します。これでgetMonth()、getDate()などでn日後の日付情報を得ることができます。サンプルでは-5など負数も指定できます。この場合、n日前が算出されます。
サンプルプログラム
window.onload = function(){
document.getElementById("calcButton").onclick = function(){
var pd = document.getElementById("pDate").value;
var dtObj = calcDate2(pd);
var Y = dtObj.getFullYear();
var M = dtObj.getMonth()+1;
var D = dtObj.getDate();
document.getElementById("result").innerHTML = Y+"年"+M+"月"+D+"日";
}
}
function calcDate2(n){
var nmsec = n * 1000 * 60 * 60 * 24; // 1日のミリ秒
var msec = (new Date()).getTime();
return new Date(msec + nmsec);
}