📅  最后修改于: 2023-12-03 15:12:02.507000             🧑  作者: Mango
在 Web 开发中,计算年龄是一个常见的需求。在这篇文章中,我们将介绍使用 JavaScript 计算年龄的方法。
我们可以使用以下公式来计算年龄:
年龄 = 当前年份 - 出生年份
但是这个公式并不是十分准确。例如,在某些情况下,人们在出生时可能没有到达新年,因此他们的出生年份应该是上一年。
因此,我们需要使用更加准确的方法来计算年龄:
function getAge(birthDate) {
const now = new Date();
const dob = new Date(birthDate);
let age = now.getFullYear() - dob.getFullYear();
const monthDiff = now.getMonth() - dob.getMonth();
if (monthDiff < 0 || (monthDiff === 0 && now.getDate() < dob.getDate())) {
age--;
}
return age;
}
这个方法接收一个生日日期作为参数,并返回当前的年龄。它首先获取当前日期和生日日期的 Date
对象,并使用 getFullYear()
方法获取它们的年份。
然后它计算当前年份与出生年份之间的差异,并将其存储在 age
变量中。
接下来,它计算当前月份与出生月份之间的差异,并检查当前日期是否在出生日期之前。如果是,则意味着该人还没有过生日,因此需要将 age
减 1。
最后,它返回 age
变量的值,即计算出来的年龄。
以下是如何使用 getAge()
函数的示例:
const age = getAge('1990-01-01');
console.log(age); // 31
以上代码将计算出一个出生于 1990 年 1 月 1 日的人当前的年龄,并将其打印到控制台。