日付間隔計算

2つの日付を入力するだけで、その間の日数・週数・ヶ月数・年数をカレンダーどおりに正確に計算するツール。イベントまでの残り日数や経過日数、プロジェクトの期間計算などに使えます。

日付間隔計算の Tips

  • イベントの開催日を「終了日」に入力すれば、今日からそのイベントまでの残り日数を確認できます。「今日を入力」ボタンで終了日にすばやく今日の日付を入れられます。
  • 「年・ヶ月・日」の内訳はカレンダーどおりの計算です。たとえば1月15日〜3月20日は単純な日数割りではなく「2ヶ月5日」と正しく表示されます。
  • プロジェクトの契約期間や工期を計算する際は、開始日を契約締結日、終了日を納品期限日にすると、残り期間・総日数の両方が一目でわかります。
  • うるう年をまたぐ期間(2月29日を含む年)も自動的に正しく計算されるため、日数計算を手作業で確認し直す必要はありません。
  • 終了日を開始日より前に指定してしまっても、自動的に日付を入れ替えて計算し、その旨を通知します。

よくある質問

年齢計算ツールは「生年月日」から「現在の年齢」を求めることに特化したツールです。本ツールは開始日・終了日の両方を自由に指定できる汎用の日付間隔計算ツールで、誕生日以外の任意の期間(イベントまでの日数・プロジェクト期間など)を計算できます。

時刻計算ツールは「1日の中の時分秒」の加減算(例: 9:30に2時間15分を足す)を扱うのに対し、本ツールはカレンダー上の「日付と日付」の間隔(年・月・週・日単位)を扱います。1日未満の時刻計算が必要な場合は時刻計算ツールをご利用ください。

エラーにはならず、内部で自動的に日付を入れ替えて絶対値としての間隔を計算し、「日付を入れ替えて計算しています」という注記を表示します。前後どちらの日付が早いか迷う場合でも安心して利用できます。

はい。2月29日を含む期間でもJavaScriptの日付計算機能により正確な日数・月数・年数が算出されます。手計算でうるう年の有無を確認する必要はありません。

単純に総日数を30で割るのではなく、年→月→日の順にカレンダー上の桁を引き算し、日数が不足する場合は終了月の前月の末日を借りてくる方式で計算しています。これにより月ごとの日数の違いを考慮した正確な内訳が得られます。
ツールくん

余談ですが ― 「日数計算」で意外と間違えやすいポイント

日付の間隔を手計算するとき、多くの人が「1ヶ月=30日」と単純化して概算しがちですが、実際の月の日数は28日〜31日とばらつきがあります。たとえば1月15日から3月20日までを「64日 ÷ 30 ≒ 2.1ヶ月」と概算するのと、カレンダーどおりに「2ヶ月と5日」と数えるのとでは、契約書や請求書の期日計算において解釈のズレが生じる可能性があります。本ツールはDateオブジェクトの年月日を直接比較する方式で、常に暦どおりの内訳を返します。

うるう年の判定ルールは「4年に1度」だけではありません。西暦年が4で割り切れる年はうるう年ですが、100で割り切れる年は平年に戻り、さらに400で割り切れる年は再びうるう年になるという例外規定(グレゴリオ暦の閏年規則)があります。2000年はうるう年でしたが、1900年・2100年は平年です。この規則はJavaScriptの標準的な日付処理系にも組み込まれており、本ツールもその挙動をそのまま利用しています。

「経過日数」の数え方には、開始日を含めるか含めないかで2通りの流儀があります。たとえば「1月1日から1月10日まで何日?」という問いに対し、両端を含む「10日間」と数える場合と、差分だけを見る「9日」と数える場合があります。本ツールは後者(単純な日数差)を採用しており、開始日を1日目として数えたい場合は表示された日数に1を足す必要がある点に注意してください。

→ すべての余談を見る