透過 MCP 連接 →

輸入計算

數學公式

數學公式: 日期 ± 日曆單位計算器
Show calculation steps (1)
  1. Month / quarter / year stepping

    Month / quarter / year stepping: 日期 ± 日曆單位計算器

    For months, quarters and years the calculator steps whole calendar months and clamps the day to the last valid day of the target month.

廣告

結果

Monday June 15, 2026 plus 180 days is
Saturday December 12, 2026
12/12/2026 · 346th Day of 2026
結果日期 12/12/2026
結果星期幾 Saturday
結果為當年第幾天 346th Day of 2026
起始日期 Monday June 15, 2026
起始日為當年第幾天 166th Day of 2026

這個計算器的功能

「日期加減日曆單位計算器」可以從任一個起始日期,加上或減去你指定數量的天、週、月、季或年。它會以你偏好的格式回傳計算後的日曆日期、星期幾,並同時顯示起始日與結果日各自是當年的第幾天。本工具採用外推格里曆(proleptic Gregorian calendar),因此在世界各地計算結果都一致,不會套用任何國定假日或工作日規則。

使用方式

輸入起始日期(年、月、日),選擇日期格式(美式 m/d/yyyy、歐式 d-m-yyyy,或 ISO yyyy-mm-dd),此設定只影響日期的顯示方式;接著選擇運算符號(加或減),輸入數量,再選定單位類型。數量可以是零,也可以是負數。

計算公式說明

天與週採用精確的天數計算:先把日期轉換成儒略日數(Julian Day Number,JDN),加上帶正負號的位移量(週會先乘以 7),再把 JDN 換算回日期,這樣就能自動處理 365 天與 366 天的年份。整體計算可表示為:

$$\text{Result} = \text{Start Date} \;\pm\; n \times \text{Unit}$$

對於天與週的精確計算:

$$\text{JDN}_{result} = \text{JDN}_{start} + n_{days}$$

月、季、年則是以完整的日曆月為單位推移:先算出總月數,再拆成年與月,最後把「日」夾限到該月的最後一個有效日期:

$$D_{result} = \min\big(D_{start},\; \text{daysInMonth}(Y_{result}, M_{result})\big)$$

舉例來說,1 月 31 日減一個月,會落在前一個月的最後一天,而不會溢位跑到下個月。

Advertisement
顯示開始日期的時間軸,左側以日曆單位做減法,右側做加法
增加或減少日曆單位會使開始日期沿時間軸向前或向後移動。

實際範例

起始日 6/15/2026(星期一,2026 年的第 166 天),加上 180 天。其儒略日數為 \(2461577\);加上 180 得到 \(2461577 + 180 = 2461757\),對應到 2026 年 12 月 12 日——星期六,也是 2026 年的第 346 天。所以結果會顯示「Saturday December 12, 2026 / 12/12/2026 / 346th Day of 2026」。

以箭頭連接的兩個日曆,顯示開始日期移動到較晚月份的結果日期
實例:將開始日期移動若干單位後會落在新的日曆日期和星期。

常見問題

為什麼加一個月後,「日」有時候會改變?因為每個月的天數不同。把 1 月 31 日加一個月時,會透過夾限機制落在下個月的最後一個有效日期(2 月 28 日或 29 日)。

閏年是怎麼處理的?天與週的運算計算的是真實天數,因此會正確地跨越閏日。若把整年數加到 2 月 29 日,而目標年份非閏年,結果會落在 2 月 28 日。

它會計算工作日嗎?不會——它純粹以日曆單位運算,會忽略週末與假日。

最後更新: