js编写一个方法获取当前时间推迟两天并跳过休息日
时间: 2024-10-19 10:08:02 浏览: 28
在JavaScript中,我们可以编写一个名为`skipWeekendsToDate`的方法来获取当前时间并向后推两天,但在这两天中跳过星期六和星期日。下面是一个简单的实现:
```javascript
function skipWeekendsToDate(date) {
if (typeof date === 'undefined') {
date = new Date();
} else if (!(date instanceof Date)) {
throw new Error("Invalid input, please provide a valid Date object.");
}
const daysToGo = 2;
let currentDay = date.getDay(); // 获取当前日期是一周中的哪一天(0 - 星期日)
// 循环直到到达工作日后两天
for (let i = 0; i < daysToGo; i++) {
while (currentDay === 0 || currentDay === 6) { // 0表示周日,6表示周一
// 如果今天是周末,就加一天
date.setDate(date.getDate() + 1);
currentDay = date.getDay();
}
}
return date;
}
// 示例
const currentTime = skipWeekendsToDate();
console.log(currentTime);
```
这个方法首先检查输入是否有效,然后计算需要经过的工作日数,接着在一个循环里不断将日期加1,直到遇到工作日。最后返回推迟两天后的日期。
阅读全文