随机日期生成器
在两个日期之间随机抽一天:造测试数据、定惊喜约会日、出历史题,或者实在定不下哪天开会时,让它替你决定。
选好区间后,点击随机抽日期。
- 测试数据、随机生日一次生成 100 个不重复的出生日期,复制成 2008-05-17 这种格式,直接粘进 Excel 或数据库种子文件。
- 约会日、出游日在接下来 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 里随机抽一秒,不带时区,适合做样例数据。注意:法定节假日和调休上班日每年都不同,工具不会自动处理,需要的话请手动剔除。
把随机日期当测试数据用
开发和数据分析时,经常要批量造注册时间、生日、订单时间。下面几点能让数据更像真的,也更容易暴露问题。
- 复制为 YYYY-MM-DD。这种格式按文本排序也是对的,Excel、WPS、MySQL、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 个,可以一次性复制为标准格式或中文日期。