日付の加算と減算の方法を自分で書きたいのですが、2月の場合は、各月の日数の判定も伴いますので、少し複雑です。申請プロセス中に常に問題が発生するため、情報を読んだ後、たとえば、特定の日付から日数を加算または減算するには、Date オブジェクトの setDate() 関数を呼び出すだけで済みます。具体的なメソッドは次のとおりです。以下:
function addDate(date,days){ var d=new Date(date); d.setDate(d.getDate()+days); var month=d.getMonth()+1; var day = d.getDate(); if(month<10){ month = "0"+month; } if(day<10){ day = "0"+day; } var val = d.getFullYear()+""+month+""+day; return val; }
このうち、date パラメータは YYYY-MM-DD の形式で加算または減算される日付であり、days パラメータは加算または減算される日数です。前方にカウントする場合は、負の値を渡します。逆算する場合は、正の数を渡します。月を加算または減算するには、setMonth() と getMonth() を呼び出すだけです。つまり、返される月は 0 から計算されることに注意してください。実際の月より 1 か月少ないので、それに応じて 1 を追加します。
特別: 年、月、日を組み合わせる場合は、int 型として合計されるため、文字列に変換する必要があることに注意してください。