首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未来日期计算器

未来日期计算器
EN

Stack Overflow用户
提问于 2017-04-07 09:52:41
回答 1查看 934关注 0票数 0

我有以下脚本,当使用时,允许用户看到未来的日期,而不包括周末。不过,我遇到的问题是,如果今天是星期五,我把未来的日期定为3天,它把星期六和星期天算作工作日。我真的希望你们中的一个人能帮上忙,因为我在Javascript方面不是很好。

正确的例子是:如果“今日”=“星期五”,那么从现在起3个工作日将是周三(而不是脚本当前计算的周一)。

有什么想法吗?

代码语言:javascript
复制
          var myDelayInDays = 3; 
          myDate=new Date();
          myDate.setDate(myDate.getDate()+myDelayInDays);

          if(myDate.getDay() == 0){//Sunday
            myDate.setDate(myDate.getDate() + 2);//Tuesday
          } else if(myDate.getDay() == 6){//Saturday
            myDate.setDate(myDate.getDate() + 2);//Monday
          }

          document.write('' + myDate.toLocaleDateString('en-GB'));

任何帮助都会很好。谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-07 11:45:48

通过更改日期和天数来尝试此代码以添加,自定义循环用于跳过sat和sun。

代码语言:javascript
复制
function addDates(startDate,noOfDaysToAdd){
  var count = 0;
  while(count < noOfDaysToAdd){
    endDate = new Date(startDate.setDate(startDate.getDate() + 1));
    if(endDate.getDay() != 0 && endDate.getDay() != 6){
       //Date.getDay() gives weekday starting from 0(Sunday) to 6(Saturday)
       count++;
    }
  }
  return startDate;
}


var today = new Date();
var daysToAdd = 3;
alert(addDates(today,daysToAdd));

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43275045

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档