gpt4 book ai didi

javascript - 包括基于 fromdate 和 todate 排除闰年

转载 作者:行者123 更新时间:2023-11-29 21:49:56 27 4
gpt4 key购买 nike

我希望有人能在这方面帮助我......

我有这个功能,它按预期工作。它检查闰年并相应地花费 365 或 366 天。

问题:我不想检查闰年,而是想检查 fromdate 和 todate,如果这些日期中的任何一个从 2 月 29 日开始并且 fromdate 和 todate 之间的差值超过 365,那么才添加 + 1 到 daysInYear 否则只考虑 365 天。我不会有任何期间 2 闰年将在给定的开始日期和今天。所以我不担心那种情况。希望很清楚。

getDifference: function(fromdate,toDate) {
var now = toDate || new Date();
// days since the date
var days = Math.floor((fromdate.getTime() - now.getTime())/1000/60/60/24);
var diff = 0;
// iterate the years
for (var y = now.getFullYear(); y <= fromdate.getFullYear(); y++){
var daysInYear = opc.calculator.leapYear(y) ? 366 : 365;
if (days >= daysInYear){
days -= daysInYear;
diff++;
// increment the age only if there are available enough days for the year.
}
}
return diff;
}

最佳答案

如果您不介意在代码中添加库,请查看:Moment.js

你做这样的事情:

moment().diff(moment('20140229', 'YYYYMMDD'), 'days');
// returns 417 today (2015-04-22)

// or

moment('20150422', 'YYYYMMDD').diff(moment('20140229', 'YYYYMMDD'), 'days');

这是一个处理时间和日期的很棒的库。

关于javascript - 包括基于 fromdate 和 todate 排除闰年,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29792905/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com