🗒️
【JavaScript】生年月日から年齢を計算する
生年月日の文字列から年齢を計算するutil関数を書いたのでメモを残します。
年月日でDateを生成する場合の引数は、(年, 月インデックス, 日付)です。
年、日は実際の数値ですが、月はインデックス(実際の数値-1)であることに注意します。
/**
* 生年月日から年齢を計算
* @param {String} yyyy/mm/dd
* @return {Number} age
*/
static getAgeFromBirthday (birthday) {
const ymd = birthday.split('/')
const today = new Date()
const thisYearBirthday = new Date(today.getFullYear(), ymd[1] - 1, ymd[2])
const age = today.getFullYear() - ymd[0]
// 今年の誕生日がまだなら1歳減らして返却
return today < thisYearBirthday ? age - 1 : age
}
Discussion
Moment.jsを使えば一瞬でした。