📜  计算年龄 js - Javascript (1)

📅  最后修改于: 2023-12-03 15:12:02.507000             🧑  作者: Mango

计算年龄 JS - JavaScript

在 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 日的人当前的年龄,并将其打印到控制台。