gpt4 book ai didi

ruby - 为什么 Date 类的新实例的默认年份等于 -4712?

转载 作者:数据小太阳 更新时间:2023-10-29 07:06:03 24 4
gpt4 key购买 nike

运行:

require 'date'
y = Date.new
puts "default year is #{y.year}"

输出:

default year is -4712

Date 对象的年份默认为 -4712 是否有任何特殊原因?我认为也许有技术(或传统)原因。我用谷歌搜索并在 Ruby 文档 (2.2.3) 中查找了它,但我找不到关于为什么的答案。

最佳答案

公元前 4713 年 1 月 1 日是 Julian day 的开始, 来自维基:

The Julian Day Number (JDN) is the integer assigned to a whole solar day in the Julian day count starting from noon Greenwich Mean Time, with Julian day number 0 assigned to the day starting at noon on January 1, 4713 BC, proleptic Julian calendar (November 24, 4714 BC, in the proleptic Gregorian calendar), a date at which three multi-year cycles started and which preceded any historical dates. For example, the Julian day number for the day starting at 12:00 UT on January 1, 2000, was 2,451,545.

这一天的年份是公元前 4713 年,或者严格来说是 -4712

关于ruby - 为什么 Date 类的新实例的默认年份等于 -4712?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33717695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com