所以基本上我正在尝试使用 addBusinessDays(new Date(), 3)
它设置了一个开始日期而不考虑周末。但是,我也需要在其中使用日期列表(假期)。我找不到任何有关如何将这些假期添加到 addBusinessDays 的文档。
我正在使用 date-fns v2+
示例代码:
import { addBusinessDays } from 'date-fns';
const holidays = [
'2019-12-20'
]
console.log(addBusinessDays(new Date(), 3)) // should include holidays => 2019-12-24
最佳答案
你也许可以做这样的事情?
const newHolidays = holidays.map(holiday => {
return addBusinessDays(new Date(holiday), 3);
});
console.log(newHolidays);
新假期 - 这是一个包含每个日期 + 3 天的新数组(保持原样不变)
Read about .map here
.map calls a provided callback function once for each element in an array, in order, and constructs a new array from the results.
您可能还想使用评论中提到的 date-fns 来“解析”日期。你可以这样做:
function parseDates(dates) {
return dates.map(date => {
return parse(date, "yyyy-MM-dd", new Date());
});
}
const parsedHolidays = parseDates(holidays);
然后你会想要改变'newHolidays'到类似这样:
const newHolidays = parsedHolidays.map(holiday => {
return addBusinessDays(new Date(holiday), 3);
});
或者,如果您希望在使用 addBusinessDays 之前一一解析它们,您可以将 parse 函数移至holidays.map
关于javascript - date-fns addBusinessdays 但包括预定义的假期日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59391809/