前提・実現したいこと
誕生日と今日の日付から年齢を算出したいのですが、どのようにすればよいでしょうか?
できれば、なるべく簡単に実装したいので、Dateクラスを使う方法でお願いします
(それよりも簡単な実装法があれば、Dateクラスにこだわりません)。
ご教示お願いします。
試したこと
Ruby
1 # 1970-01-01のような書式の文字列で受け取る。 2 def getAge(birthday) 3 unless birthday.length == 10 && birthday.include?("-") then 4 return false 5 end 6 begin 7 birthday = Date.parse(birthday) 8 rescue 9 return false 10 end 11 today = Date.today 12 diff = today - birthday 13 diff.to_i / 365 14 end
これで実装できたと思ったのですが、よく考えたら一律で365で割っているので、うるう年が考慮されていないことに気づきました。
うるう年を考慮したコードを書くと、なかなか長くなるので、もっと手軽な方法ってありますか?
補足情報(FW/ツールのバージョンなど)
ruby 2.6.5p114
Rails 6.0.1
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/16 09:23