如何根据给定年龄计算所经历的闰年?
计算年龄对应区间内闰年的JavaScript函数
这是一个简易的JavaScript函数,能获取指定年龄覆盖时间段内的闰年数组,以及闰年的数量。你可以修改currentAge和deathYear变量的值来适配不同场景,示例中使用的参数为currentAge = 80、deathYear = 2010。
// 传入年龄(可选传入去世年份),即可获取闰年数组及闰年数量 let currentAge = 80; let deathYear = 2010 function getLeapYears(currentAge, deathYear) { const currentYear = new Date().getFullYear() let getBirthYear = 0 if (deathYear) { getBirthYear = deathYear - currentAge } else { getBirthYear = currentYear - currentAge } let numberOfYears = [] for (let index = getBirthYear; index < currentYear + 1; index++) { numberOfYears.push(index) } let leapYears = [] leapYears = numberOfYears.filter(item => item % 4 == 0) return { leapYears: leapYears, numberOfYears: leapYears.length + 1 } } // 调用示例:仅传入年龄,计算从出生年到当前年的闰年 const result1 = getLeapYears(currentAge) // 调用示例:传入年龄和去世年份,计算从出生年到去世年份的闰年 const result2 = getLeapYears(currentAge, deathYear) console.log("result1", result1) console.log("result2", result2)
函数说明
- 仅传入
currentAge时,函数会以当前系统年份为终点,计算从出生年到当前年的所有闰年 - 传入
currentAge和deathYear时,函数会先根据去世年份算出出生年,再计算该区间内的闰年(注:原函数循环终点为当前年份+1,若需严格以去世年份为终点,需调整循环条件)
内容的提问来源于stack exchange,提问作者T.O.M
相关产品推荐
相关产品推荐

