为什么" ' 2019-02-01' .to_date - Date.today" "一分之四百四十二&#34 ;?

时间:2017-11-16 06:55:19

标签: ruby-on-rails ruby

我这样做了:

442

为什么返回值不是{{1}}?

2 个答案:

答案 0 :(得分:1)

因为Date#-返回日期或理性。来自docs

  

d - 其他→日期或​​理性

     

如果另一个是日期对象,则返回两个日期之间的差异。如果另一个是数值,则返回指向self之前的其他日期的日期对象。如果另一个是小数,则假设其精度至多为纳秒。

答案 1 :(得分:0)

它给出了天数的差异 试试这个

pry(main)> ('2019-02-01'.to_date - Date.today).to_i
=> 442
pry(main)> (Date.today + 2.days) - Date.today)
=> (2/1)
pry(main)> ((Date.today + 2.days) - Date.today)).to_i
=> 2

所以,442是天差。