js计算两个日期之间工作日天数
程序员文章站
2022-03-03 10:13:18
...
一个需求是下发任务时选择开始日期跟结束日期,要自动计算出工时数,代码如下:
function getWeekday(e){
var startDt=document.getElementById("planBeginDate").value;
var endDt=document.getElementById("planEndDate").value;
if(startDt && endDt){
var first = new Date(startDt);
var last = new Date(endDt);
//计算工作日方法:遍历这两个日期区间的每一个日期,获取他的getDay()
//分别获取first和last的毫秒数(时间戳)
first = first.getTime();
last = last.getTime();
var count = 0;
while(first <= last){
//first在遍历过程中,就是两个日期区间中的每一个日期
//console.log(first);
//将first转换成日期对象
var d = new Date(first);
//判断是否为工作日
if(d.getDay() >= 1 && d.getDay() <= 5){
count++;
}
//增加一天
first += 24*3600*1000;
}
//转换为工时(以每天 8 小时计)
count = count*8;
//给对应输入框赋值
$("input[name='planWorkingHours']").val(count);
}
}
上一篇: 随笔:Spring与云计算(四)