查出任意日期是星期几
知道某个具体日期是星期几,用途比想象中广泛得多:查一查自己出生那天是星期几,查某个重要历史事件发生在星期几,核实未来的会议或假期落在哪一天,或者解答一道趣味问答题。输入任意日期,星期几立刻显示出来。
星期几是怎么算出来的
任意日期对应的星期几,可以通过一种叫做"蔡勒公式"或"世界末日算法"(Doomsday algorithm)的公式算出来,两者都基于模运算。这个计算器使用的JavaScript日期对象会自动应用公历规则,对公历纪元内的任意日期都能给出准确结果。
历史上的有趣巧合
一些具有历史意义的日期,对应的星期几本身就很有意思:
- 2000年1月1日(千年虫危机):星期六——广受担忧的计算机千年虫问题恰好发生在一个周末,减少了对企业运转的即时冲击。
- 1776年7月4日(美国独立):星期四——大陆会议在一个星期四通过了《独立宣言》。
- 1989年11月9日(柏林墙倒塌):星期四。
- 2001年9月11日:星期二——世贸中心遇袭发生在一个周二的早晨。
- 2025年12月25日(圣诞节):星期四。
关于生日的趣味小知识
很多人好奇自己出生那天是星期几,这个计算只需要知道出生日期就够了。一些名人的生日也透出些有趣的规律——阿尔伯特·爱因斯坦出生于1879年3月14日,那天是星期五;而威廉·莎士比亚出生和去世都在4月23日,分别落在1564年的星期二和1616年的星期三。
用星期几来规划
知道未来某个日期是星期几,对实际规划很有帮助:确认某个计划中的活动不会落在周末,查一下某个法定假日是星期几(如果是星期一,就能拼出一个小长假),或者核实签证预约、机票预订、合同截止日期具体落在哪一天。
公历与其他历法
公历是1582年由教皇格里高利十三世为改革儒略历而颁布的。不同国家采用公历的时间并不一样——英国及其殖民地在1752年才改用公历,俄国则一直拖到1918年。在一个国家采用公历之前的日期,严格来说属于儒略历,同样的日期在儒略历下对应的星期几可能不同。这个计算器采用的是"外推公历"(proleptic Gregorian calendar),也就是把公历规则一致地往回推算,这是计算历史日期时的标准做法。
使用方法
用日期字段选择任意一个日期,不管是过去还是未来,星期几会立刻显示在下方。不需要单独点确认按钮——改变日期就会立即重新计算结果,方便你快速核对一连串日期,比如查一下某个事件未来十年里每一次周年纪念日落在星期几,或者往回翻查一连串历史日期。
一个心算的小技巧
数学家约翰·康威推广的"世界末日算法",是一种不用计算器就能推算任意日期是星期几的心算捷径。它的原理是先记住每一年的"世界末日"——一个当年好几个容易记住的日期(比如4/4、6/6、8/8、10/10、12/12)总会落在的那个星期几,再从这些日期里最近的一个往前或往后数到你要查的日期。熟练运用需要一些练习,但一旦学会,绝对是一个能震住人的小把戏,而这个计算器正好可以用来验证你心算的答案是否正确。
为什么同一个日期在不同年份是不同的星期几
因为平年有365天,不是7的整数倍,所以任何一个固定日期(比如你的生日)对应的星期几,每年都会往后挪一天,遇到闰年则会挪两天,因为多出来的那个2月29日会把之后的所有日子都往后再推一步。这就是为什么生日这一年落在星期二,下一年就变成星期三,再碰上一个闰年之后又跳到星期五。只要拉的时间足够长,这个规律就会重复:在旧式儒略历闰年间隔下,任意一个日期每隔28年就会回到同一个星期几,不过公历的世纪例外规则会偶尔让这个周期稍微拉长一点。
私密且即时
计算完全使用JavaScript内置的日期对象,在你的浏览器中运行,自动应用公历规则,选好日期后结果立即显示,你输入的任何内容都不会被发送到服务器、记录或分享。
Day of week FAQ
- What day of the week was I born?
- Enter your birthday and the calculator shows the day of the week.
- How far back can I go?
- The calculator uses JavaScript's Date object, which reliably handles dates from the year 100 CE onward in the Gregorian calendar.
- Why is January 1, 2000 useful to know?
- January 1, 2000 was a Saturday. Y2K was on a weekend, which reduced the immediate disruption.