计算两日期之间的工作日天数(js写)
程序员文章站
2022-03-03 10:09:05
...
写项目的时候用的小功能,顺便写一写。
function getDays(startDate, endDate){
//转为Date类型
var start = new Date(Date.parse(startDate));
var end = new Date(Date.parse(endDate));
//获取时间戳
var startTime = start.getTime();
var endTiem = end.getTime();
//获取开始日期是周几
var startweek = start.getDay();
//计算出相隔的天数
var days = Math.abs((endTiem - startTime) / (1000*60*60*24)) + 1;
//存放相隔之间的周六日天数
var weeks = 0;
for (var i = 0; i < days ; i++) {
//如果开始日期是周六日,weeks+1,否则,验证下一天
if (startweek == 0 || startweek == 6) {
weeks ++;
}
//下一天的时间戳
startweek = startTime + (1000 * 90 * 60 * 24 * (i+1));
//下一天是周几
startweek = new Date(startweek).getDay();
}
var result = days - weeks;
return result;
}
//进行测试
console.log(getDays('2020-02-13','2020-02-29'));
结果显示:
上一篇: 计算两个日期之间的工作日
下一篇: java 框架有哪些?