Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

日付の差分を取りたいならDateライブラリを使おう

何もよみこまなくても、Timeクラスを使えば日付を扱う事ができます。
ところが……これで差分を取ろうとすると

> (Time.local(2014,3,31) - Time.local(2013,12,1) ).class
#=> Float

……そう、Floatになってしまうのです。

こういう用途では標準添付ライブラリ、Dateを使います。

> require 'date'
#=> true

> Date.new(2014,3,31) - Date.new(2013,12,1)
=> (120/1)

ちゃんと120日と出ました。楽チンですね・