gpt4 book ai didi

javascript - 如何使用moment js让第二天跳过周末

转载 作者:行者123 更新时间:2023-11-28 16:56:40 26 4
gpt4 key购买 nike

我正在使用moment.js处理日期。

上午10点之前的订单将在当天处理,上午10点之后的订单将在第二天处理。但是,当有人在周五上午 11 点订购时,我不希望下一个处理日是周六,而是下周的周一。

如何使用 moment.js 做到这一点?

目前这是我的代码(还没有检查上午 10 点,我稍后会添加):

  // Set locale to dutch
moment.locale('nl');

// Set current day and set full date to use in string later on
$dag = moment().format('dddd');
$volledatum = $dag +' '+ moment().format('D MMMM');

// Check if day is saturday or sunday
if($dag == 'zaterdag' || $dag == 'zondag'){
// It's the weekend so $volledatum should be the first day after the weekend
$('#datumcheck').append('* Mits wij drukklare en vrijgegeven bestanden vandaag <br><b>('+ $volledatum +') <u>voor 10 uur</u></b> hebben ontvangen en de betaling is voltooid.');
}else{
// It's not the weekend so use the current date
$('#datumcheck').append('* Mits wij drukklare en vrijgegeven bestanden vandaag <br><b>('+ $volledatum +') <u>voor 10 uur</u></b> hebben ontvangen en de betaling is voltooid.');
}

最佳答案

您可以使用moment-business-days .

示例:

var momentBusinessDays = require("moment-business-days")

momentBusinessDays('20-09-2018', 'DD-MM-YYYY').businessAdd(1)

如果您不想使用其他外部库,您可以使用类似以下内容的内容:

function addBusinessDays(originalDate, numDaysToAdd) {
const Sunday = 0;
const Saturday = 6;
let daysRemaining = numDaysToAdd;

const newDate = originalDate.clone();

while (daysRemaining > 0) {
newDate.add(1, 'days');
if (newDate.day() !== Sunday && newDate.day() !== Saturday) {
daysRemaining--;
}
}

return newDate;
}

关于javascript - 如何使用moment js让第二天跳过周末,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58951470/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com