Javascript 如何计算日中日的节假日日 我想计算在假期中有假期的时间。当我选择假日日期作为结束日期时,我尝试过,持续时间为0。但如果我选择第二天,持续时间将照常计算,假期不会减少。我必须在代码中添加或更改什么 function getBusinessDatesCount

Javascript 如何计算日中日的节假日日 我想计算在假期中有假期的时间。当我选择假日日期作为结束日期时,我尝试过,持续时间为0。但如果我选择第二天,持续时间将照常计算,假期不会减少。我必须在代码中添加或更改什么 function getBusinessDatesCount,javascript,html,duration,bootstrap-datepicker,Javascript,Html,Duration,Bootstrap Datepicker,如何计算日中日的节假日日 我想计算在假期中有假期的时间。当我选择假日日期作为结束日期时,我尝试过,持续时间为0。但如果我选择第二天,持续时间将照常计算,假期不会减少。我必须在代码中添加或更改什么 function getBusinessDatesCount(startDate, endDate) { var count = 0; var curDate = new Date(startDate); var holiday = []; holiday[0] = new Date(

如何计算日中日的节假日日 我想计算在假期中有假期的时间。当我选择假日日期作为结束日期时,我尝试过,持续时间为0。但如果我选择第二天,持续时间将照常计算,假期不会减少。我必须在代码中添加或更改什么

function getBusinessDatesCount(startDate, endDate) {
  var count = 0;
  var curDate = new Date(startDate);

  var holiday = [];
  holiday[0] = new Date('2019-08-08');
  holiday[1] = new Date('2019-08-14');

  while (curDate <= endDate) {
    var dayOfWeek = curDate.getDay();
    var isWeekend = (dayOfWeek == 6) || (dayOfWeek == 0);

    if (!isWeekend && !isHoliday(endDate, holiday))
      count++;
    curDate.setDate(curDate.getDate() + 1);
  }

  function isHoliday(dt, arr) {
    var bln = false;
    for (var i = 0; i < arr.length; i++) {
      if (compare(dt, arr[i])) { //If days are holidays
        bln = true;
        break;
      }
    }
    return bln;
  }

  function compare(dt1, dt2) {
    var equal = false;
    if (dt1.getDate() == dt2.getDate() && dt1.getMonth() == dt2.getMonth() && dt1.getFullYear() == dt2.getFullYear()) {
      equal = true;
    }
    return equal;
  }
  return count;
}
函数getBusinessDateScont(开始日期、结束日期){ var计数=0; var curDate=新日期(startDate); var假日=[]; 假日[0]=新日期('2019-08-08'); 假日[1]=新日期('2019-08-14');
while(curDate)可能重复我尝试过,但持续时间仍计算假期可能重复我尝试过,但持续时间仍计算假期