日付計算ツール
2つの日付の間の日数を計算したり、特定の日付に日数を足し引きできます。
計算結果
よく使う日数
計算結果
基準日
2つの日付の間は何日ですか?
上で開始日と終了日を選ぶと、日数がすぐに表示されます。ボタンを押す必要も、サーバーに送信されることもありません。締め切りを数えようとしてカレンダーを指でたどるたびに、月末あたりで決まって分からなくなる——その面倒をなくしたくて、この日付計算ツールを作りました。
差分タブはまず素の日数を表示し、期間が長くなると同じ値を週・月・年の単位でも言い換えます。だから400日のような数字も「1年1か月5日」と一目で読み取れます。終了日が開始日より前なら、結果はマイナスで表示されます。
「開始日を含む」は何が変わりますか?
開始日そのものを1日目として数えるため、結果に1日が加わります。既定では開始日を除くので、「旅行まであと何日?」のように2つの日付の間の純粋な間隔をそのまま示します。
両端の日付をどちらも数えたいときは「開始日を含む」に切り替えてください。月曜から金曜まで会議室を予約する、不在になる休暇の日数を数える、初日から料金がかかる宿泊を精算する——こうした初日が数えるべき対象に入る場面では、この+1がちょうど正しくなります。
日付に日数を足し引きするには?
2つ目のタブを開いて基準日を決め、加算か減算を選び、日数を入力すると、結果の日付がその場で更新されます。手入力の代わりに、よく使う1・7・14・30・90・180・365日のチップを押して一度に入れることもできます。
結果の日付は曜日まで含めて丁寧に書き出されます。だから今日から30日後が単なる「ある日」ではなく土曜日だということまで一目で分かります。実のところ、私がいちばん知りたいのはたいていこの曜日です。週末や祝日に重なるかどうかで、予定の立て方がまるで変わってくるからです。
うるう年や日付の標準はどう扱っていますか?
この計算ツールは、私たちが日常で使うグレゴリオ暦(Gregorian calendar、1582年に導入された現行の太陽暦)をそのまま採用しています。グレゴリオ暦の平均1年はちょうど365.2425日で、400年に146,097日を割り当て、そのうち97回をうるう年とする(146,097 ÷ 400)ことで得られる値です。だから、うるう年を一度でも数え落とすと数日ずれてしまう長い期間でも、私がカレンダーを指でたどって数えるより正確に出ます。
うるう年の規則そのものは単純です。西暦年が4で割り切れればうるう年、ただし100で割り切れる年は平年、しかし400で割り切れる年は再びうるう年です。そのため2000年はうるう年ですが、1900年と2100年は平年です。この規則は米海軍天文台(U.S. Naval Observatory)のうるう年の解説でそのまま確認できます。
日付そのものは、国際規格ISO 8601の YYYY-MM-DD 形式で扱います。インターネットのタイムスタンプ規格であるRFC 3339は、この形式とグレゴリオ暦の関係を次のように定義しています。
“This document defines a date and time format for use in Internet protocols that is a profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.” — RFC 3339, Date and Time on the Internet: Timestamps
週(week)の数え方も同じISO 8601に従います。週は月曜日に始まり、その年の第1週はその年の最初の木曜日を含む週(すなわち1月4日を含む週)です。そのため年末年始の数日は、暦の上の年と週番号の上の年が1年ずれることがあります——詳しい規則はISO week dateにまとめられています。
主な数値を一覧にすると次のとおりです。
| 項目 | 値 | 根拠となる標準 |
|---|---|---|
| グレゴリオ暦の平均1年 | 365.2425日 | Gregorian calendar |
| うるう年の周期 | 400年に97回(4で割り切れ・100は除外・400は含む) | Gregorian calendar |
| 1日 | 86,400秒 | POSIX / Unix time |
| 日付表記 | YYYY-MM-DD | ISO 8601 |
| 第1週の定義 | 最初の木曜日を含む週(1月4日を含む・月曜始まり) | ISO 8601 |
内部ではブラウザのJavaScript Date オブジェクトを使っています。これは1970年1月1日0時(UTC)からの経過ミリ秒で時刻を表し、1日をうるう秒を除いてちょうど86,400秒(24 × 60 × 60)として計算します。動作の詳細はMDNのDate ドキュメントに記載されています。
日付計算ツールはどんなときに役立ちますか?
日付をなんとなく覚えるのではなく、正確に押さえる必要があるときです。よく使う場面は次のとおりです。
- 試験・公開・納期・旅行までのD-dayカウント
- 日数で決まる期限——90日の予告期間、14日の返品期間、180日のビザ上限
- ある日付に始まり、決まった日数後に満了する契約や保証
- 100日・1,000日といった記念日や節目
すべての計算はブラウザ内だけで行われるため、契約書の機微な日付も端末の外に出ることはありません。