ruby - 为什么 Ruby 认为公元 100 年有 366 天?

标签 ruby date datetime leap-year

以下表达式在 Ruby 中返回“366”,暗示公元 100 年是闰年(事实并非如此):

(Date.ordinal(101) - Date.ordinal(100)).to_i

与 DateTime 相同。

但是,Date.leap?(100) 正确返回 false

1.9.1 版的结果相同。和 2.0.0。

什么给了?我应该提交错误报告吗?

更新

此外,公元 1582 年显然还差 10 天!

(Date.ordinal(1583) - Date.ordinal(1582)).to_i
 => 355

最佳答案

根据维基百科,100确实是闰年,1582确实跳过了 10 天。

关于ruby - 为什么 Ruby 认为公元 100 年有 366 天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23176409/

相关文章:

php - 如何在mysql日期类型字段中插入一个空值?

c# - 无法更改 DateTime 的月份格式

ruby-on-rails - 检查帖子是否在特定日期后发布

ruby - 有没有一种 Ruby 方法可以按单词数对字符串数组进行排序?

ruby-on-rails - 来自 Rails 表单的用户数据不是采用 UTF-8 编码吗?

Ruby:即使文件未加载, 'require' 也会返回 false

angular - 发生错误 InvalidPipeArgument Angular 6

ruby - 如何在数组中找到最大负数和最小正数

linux - 从 systemd bash 内联脚本创建 filename_$(date %Y-%m-%d)

datetime - 在 java 8 中解析时间字符串 - ClockHourOfAmPm 的值无效