JS实现根据出生年月计算年龄



function calculateAge(birthYear, birthMonth, birthDay) {
    const today = new Date();
    const todayYear = today.getFullYear();
    const todayMonth = today.getMonth() + 1; // getMonth() 是从0开始的
    const todayDay = today.getDate();

    let age = todayYear - birthYear;
    if (todayMonth < birthMonth || (todayMonth === birthMonth && todayDay < birthDay)) {
        age--;
    }

    return age;
}

// 示例用法
const age = calculateAge(1990, 5, 20); // 假设出生日期为1990年5月20日
console.log(age); // 输出年龄

这段代码定义了一个名为 `calculateAge` 的函数,它接受三个参数:出生年 `birthYear`、出生月 `birthMonth` 和出生日 `birthDay`。然后,函数通过比较这些值与当前日期来计算并返回年龄。如果今天的月份小于出生的月份,或者月份相同但今天的日期小于出生的日期,那么年龄减一,以处理那些尚未过完生日的情况。最后,提供了一个示例用法来演示如何调用这个函数。