想知道是否有人有一个解决方案来检查两个日期及其范围之间是否存在周末.
var date1 = 'Apr 10, 2014';
var date2 = 'Apr 14, 2014';
funck isWeekend(date1,date2){
//do function
return isWeekend;
}
Run Code Online (Sandbox Code Playgroud)
先感谢您.
编辑添加到目前为止我得到的东西.检查两天.
function isWeekend(date1,date2){
//do function
if(date1.getDay() == 6 || date1.getDay() == 0){
return isWeekend;
console.log("weekend")
}
if(date2.getDay() == 6 || date2.getDay() == 0){
return isWeekend;
console.log("weekend")
}
}
Run Code Online (Sandbox Code Playgroud)
最简单的方法是迭代日期并返回,如果有任何一天6
(星期六)或0
(星期日)
演示:http://jsfiddle.net/abhitalks/xtD5V/1/
代码:
function isWeekend(date1, date2) {
var d1 = new Date(date1),
d2 = new Date(date2),
isWeekend = false;
while (d1 < d2) {
var day = d1.getDay();
isWeekend = (day === 6) || (day === 0);
if (isWeekend) { return true; } // return immediately if weekend found
d1.setDate(d1.getDate() + 1);
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
如果要检查两个日期之间是否存在整个周末,请稍微更改代码:
演示2:http://jsfiddle.net/abhitalks/xtD5V/2/
代码:
function isFullWeekend(date1, date2) {
var d1 = new Date(date1),
d2 = new Date(date2);
while (d1 < d2) {
var day = d1.getDay();
if ((day === 6) || (day === 0)) {
var nextDate = d1; // if one weekend is found, check the next date
nextDate.setDate(d1.getDate() + 1); // set the next date
var nextDay = nextDate.getDay(); // get the next day
if ((nextDay === 6) || (nextDay === 0)) {
return true; // if next day is also a weekend, return true
}
}
d1.setDate(d1.getDate() + 1);
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4611 次 |
最近记录: |