如何调整下面的函数,以便在调用getdate('add',2)
时,如果当前日期是在星期五登陆,即。 (2015年2月23日)额外的2"工作周"日期将带来新的"工作周"日期至2015年2月27日。
我需要该功能基本上跳过周末。如果现在的日期是星期五。
function getdate(type,y) {
if (type == 'add') {
var someDate = new Date();
var numberOfDaysToAdd = y
someDate.setDate(someDate.getDate() + numberOfDaysToAdd);
var dd = someDate.getDate();
var mm = someDate.getMonth() + 1;
var yyyy = someDate.getFullYear();
return dd + '/'+ mm + '/'+ yyyy
}
}
答案 0 :(得分:1)
我使用while
检查每一天是否是周末,如果是,则跳过它。
function getdate(type,y) {
if (type == 'add') {
var someDate = new Date();
var numberOfDaysToAdd = y;
var i=1;
while(i<=numberOfDaysToAdd){
someDate.setDate(someDate.getDate() + 1);
if(someDate.getDay() != 0 && someDate.getDay() != 6){//if the day isn't weekend days,then count it.
i++;
}
}
var dd = someDate.getDate();
var mm = someDate.getMonth() + 1;
var yyyy = someDate.getFullYear();
return dd + '/'+ mm + '/'+ yyyy
}
}
因此,即使添加的日期是接下来的2周或更长时间,您也可以跳过所有周末的代码。