週數

ISO 週數查詢

輸入任意日期即可查看其 ISO 8601 週數、ISO 年份(年末年初可能與曆年不同)、星期、年內第幾天與所屬季度。

ISO 週由週一開始。第 1 週包含當年的第一個星期四 —— 所以 1 月 1 日有時屬於前一個 ISO 年,12 月 31 日有時屬於下一個 ISO 年。

等待有效輸入選擇一個日期,然後點選「計算」。

什麼是 ISO 週數

ISO 8601 定義了週數編號,使全世界的日曆、薪資系統和供應鏈報表能就「第 23 週」的含義達成一致。ISO 年的第 1 週是包含該年第一個星期四的那一週——等價地說,是包含 1 月 4 日的那一週。每週從星期一到星期日。其結果是,12 月最後幾天可能屬於下一個 ISO 年的第 1 週,而 1 月最初幾天可能屬於上一個 ISO 年的最後一週。這就是本工具同時列印日曆年和 ISO 年的原因。

目前週數 —— 快速查詢

開啟頁面後,日期輸入框已預填為今天,因此下方面板已顯示目前 ISO 週數、ISO 年、星期、年內第幾天和季。在你隨意嘗試之後,「設為今天」按鈕可將其重設。常見組合:「現在是第幾週?」——讀標題;「3 月 17 日是第幾週?」——輸入 03/17/目前年份;「2026 年聖誕節是第幾週?」——輸入 2026-12-25。

ISO 年與日曆年 —— 邊界情形

兩個年份在大多數日期上一致,但在年份邊緣會分歧。例如 2026-01-01 是星期四,所以它屬於 2026 年的 ISO 第 1 週——日曆年和 ISO 年一致。但 2027-01-01 是星期五,這意味著它落在 2026 年的 ISO 第 53 週(因為那一週的星期四 2026-12-31 在 2026 年)。當你寫形如 2027-W01 的檔名或報表標題時,請仔細核對該 W 編號對應哪一年——本工具始終顯式顯示 ISO 年。

  • 2025-12-29(星期一)→ ISO 2026-W01-1(日曆年 2025,ISO 年 2026)
  • 2026-01-04(星期日)→ ISO 2026-W01-7
  • 2026-12-31(星期四)→ ISO 2026-W53-4(因為 1 月 1 日是星期四,所以存在第 53 週)
  • 2027-01-03(星期日)→ ISO 2026-W53-7

ISO 週緊湊記法

ISO 8601 允許將日曆日期寫成「YYYY-Www-D」,其中 ww 是(補零的)週數,D 是星期(1 = 星期一 至 7 = 星期日)。本工具會輸出可直接複製的該字串——當資料庫欄位期望 ISO 週格式,或薪資週期以這種方式報告期間邊界時很有用。不帶日期後綴(「YYYY-Www」)時,該值標識一整週。

2026 年及其他年份的總週數

大多數 ISO 年有 52 週;有些有 53 週。53 週的年份是 1 月 1 日落在星期四的年份,或閏年中 1 月 1 日落在星期三的年份。「本 ISO 年總週數」一列告訴你 2026 年屬於哪一種——而「剩餘週數」一列會倒數所顯示 ISO 年還剩多少個 ISO 週,對於「在年底前」結束的專案規劃很有用。

  • 2026 年附近的 53 週年份:2020、2026、2032、2037、2043、2048
  • 2026 年本身:53 個 ISO 週(2026 年 1 月 1 日是星期四)
  • 相鄰:2025 年有 52 週,2027 年有 52 週

年內第幾天與季

還有兩個有用的計數器共用此面板。年內第幾天(1–365,閏年為 1–366)讓你能為 8 月 29 日寫出像「sample-2026-241」這樣簡潔的夾具識別碼。季(Q1–Q4)把日期對應到標準的財務季劃分:Q1 = 1–3 月,Q2 = 4–6 月,Q3 = 7–9 月,Q4 = 10–12 月。許多公司在不同的月份開始財年;如果你的公司如此,請在讀取季之前將日期向前移動相同的月數。

在程式碼中計算 ISO 週數

每個主流標準函式庫都內建了此功能,通常只需一次方法呼叫。本工具的演算法與這些函式庫的行為一致,因此其值可在各語言間重現。

  • JavaScript (Intl): new Intl.DateTimeFormat('en-US', { weekYear: 'numeric', week: 'numeric' }).formatToParts(date)
  • Python: date.isocalendar() returns (iso_year, iso_week, iso_weekday)
  • Go: t.ISOWeek() returns (year, week)
  • SQL (PostgreSQL): EXTRACT(WEEK FROM ts) and EXTRACT(ISOYEAR FROM ts)
  • Java: LocalDate.of(...).get(WeekFields.ISO.weekOfWeekBasedYear())