gpt4 book ai didi

javascript - 如何在javascript中获取两个不同日期之间的工作日

转载 作者:行者123 更新时间:2023-11-28 08:00:02 25 4
gpt4 key购买 nike

这里我需要一种方法来找出两个日期之间的工作日。如果我提供两个日期,如“2014-08-28”和“2014-08-30”,它应该返回['Friday','Saturday']

var d = new Date();
var weekday = new Array(7);
weekday[0]= "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";

var n = weekday[d.getDay()];

如何使用.getDay()

最佳答案

您需要编写一些函数,最重要的是,使用 Date.parse 将日期转换为毫秒并在日期之间进行数学运算。解决方案如下。请参阅 jsFiddle 了解工作代码。 demo

var days = 3;
var msPerDay = 1000*60*60*24;


var nextDay = function ( day , dayAfter ) {
return Date.parse(day) + (msPerDay*dayAfter);
}

var daysBetween = function ( from, to ) {
return ((Date.parse(to) - Date.parse(from))/msPerDay) - 1 ;
}


var d1 = new Date();
var d2 = new Date( nextDay( d1, days ));

var weekday = new Array(7);
weekday[0]= "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";


var getInbetweenWeekdays = function () {
var weekDays = [];
for (var i = 0 ; i < daysBetween( d1, d2 ); i++ ) {
weekDays.push(weekday[new Date( nextDay( d1, i + 1 ) ).getDay()]);
}

return weekDays;
}



alert(getInbetweenWeekdays());

稍微详细说明一下,添加适当的 setter/getter setter ,你会没事的,但你会明白的。

关于javascript - 如何在javascript中获取两个不同日期之间的工作日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25550449/

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