隨機日期產生器
在兩個日期之間隨機抽一天:做測試資料、決定驚喜約會日、出歷史題目,或大家喬不出聚會日期時,交給它決定。
選好區間後,按下隨機抽日期。
- 測試資料、假生日一次產生 100 個不重複的出生日期,複製成 2008-05-17 格式,直接貼進 Excel、Google 試算表或資料庫。
- 約會日、小旅行從接下來 30 天隨機抽一天,先排進行事曆,當天再揭曉行程。
- 歷史問答從 1900 年代隨機抽一個日期,請同學說說那一年發生了什麼事。
- 公平排班抽查日、值日、部門聚餐日,用抽的最公平,不會有人覺得被針對。
三步驟抽出隨機日期
設定區間
輸入開始和結束日期,或點選常用區間。頭尾兩天都可能被抽中;填反了也會自動對調。
加上條件
設定數量,決定是否只要週一到週五、是否加上時間、同一天能不能重複出現。
直接使用
只抽一天時會顯示成一張日曆紙;抽多天時是清單,可複製成 YYYY-MM-DD 或中文日期,也能丟到轉盤上再轉一次。
細節做好的隨機日期工具
常見用途與建議區間
會搜尋「隨機日期」的人,大多是下面幾種需求。可以直接照著設定,再依實際情況調整頭尾。
| 用途 | 區間 | 設定 |
|---|---|---|
| 測試帳號的出生日期 | 1950-01-01 到 2008-12-31 | 100 個、不重複、複製 YYYY-MM-DD |
| 約會日、週末小旅行 | 未來 30 天 | 1 個,要請假的可勾只抽平日 |
| 隨機抽查、稽核日 | 本季 | 只抽平日、多個、依先後排序 |
| 歷史問答出題 | 1900-01-01 到 1999-12-31 | 1 個,問那一年發生什麼事 |
| 展示用資料庫的訂單時間 | 過去 12 個月 | 加上隨機時間、隨機順序 |
| 每日寫作或打卡日曆 | 今年 | 30 個、依先後排序 |
隨機日期是怎麼抽的
工具會先把開始和結束日期換算成「第幾天」,算出區間內總共幾天(含頭尾),再用 crypto.getRandomValues 在這個範圍內抽一個整數。單純取餘數會讓某些結果稍微偏多,這裡以拒絕取樣消除偏差,第一天、最後一天和中間任何一天機率相同。
勾選只抽平日時,會先數出區間內有幾個週一到週五,再直接從這些平日中抽。如果把抽到的週六、週日順延到下週一,週一的機率會變成其他平日的三倍,這是許多簡單程式常見的錯誤。
隨機時間是從 00:00:00 到 23:59:59 隨機抽一秒,不帶時區,適合做範例資料。國定假日與補班日每年不同,工具不會自動排除,需要時請手動刪除。
把隨機日期拿來當測試資料
開發或做資料分析時,常要大量產生註冊時間、生日和訂單時間。以下幾個習慣能讓資料更像真的,也更容易抓到 bug。
- 複製成 YYYY-MM-DD。這個格式用文字排序也正確,Excel、Google 試算表、SQL、JSON 都能直接讀。
- 刻意放進邊界日期:閏年的 2 月 29 日、12 月 31 日、跨年前後幾天。
- 要測年齡限制時,把區間設成允許的最早到最晚出生日,確保產生的使用者都能通過,再手動補幾筆超出範圍的。
- 要讓很多筆資料落在同一天、測試依日期分組時,取消日期不重複。
- 日誌和時間軸用依先後排序;不希望資料本來就排好時用隨機順序。
還需要搭配隨機數字或隨機名單嗎?可以和隨機數字產生器、清單隨機排序一起用。
隨機抽一天,可以這樣玩
- 情侶驚喜日:兩人各抽下個月的一天,各自負責那天的約會行程。
- 猜生日:抽一個日期,大家猜哪位藝人是這天出生的。
- 歷史上的今天:隨機抽一天,查查那天發生過什麼事。
- 斷捨離挑戰:每週抽一個平日,整理一個抽屜或櫃子。
- 讀書會、聚餐:從大家都有空的日子裡公平抽出一天。
- 班級活動:抽出隨堂小考或輪流上台分享的日子。
常見問題解答
怎麼在兩個日期之間隨機產生一個日期?
填好開始日期和結束日期,或點一個常用區間,再按隨機抽日期就好。開始和結束那兩天也可能被抽中,區間內每天機率相同。
可以只抽平日、不要週末嗎?
可以。勾選只抽平日,結果一定是週一到週五,而且是先排除週末再抽,每個平日機會均等。國定假日和補班日沒有自動處理,因為每年都不一樣。
能同時產生隨機日期和時間嗎?
可以。勾選加上隨機時間,每個日期都會搭配 00:00 到 23:59 之間的隨機時間,複製出來是 2027-03-19 14:05 這種格式。
要怎麼大量產生隨機生日?
點成年人生日(1950 到 2008 年),把數量改成需要的筆數,保持日期不重複,再複製成 YYYY-MM-DD 貼進試算表即可。
會抽到重複的日期嗎?
勾選日期不重複時不會。如果要的數量比區間天數還多,會把每一天列出一次並顯示提示。想允許重複就取消勾選。
結果會因為時區不同而改變嗎?
不會。所有計算都以 UTC 整天進行,顯示時也不換算成當地時間,抽到 3 月 19 日,在哪裡看都是 3 月 19 日。
一次最多可以產生幾個日期?
每次最多 500 個,可以一次複製成標準格式或中文日期。