Einführung
In diesem Lab werden wir eine JavaScript-Funktion untersuchen, die hilft, das Datum zu berechnen, nachdem eine bestimmte Anzahl von Werktagen hinzugefügt wurde. Die Funktion verwendet Array-Manipulation und Datums-Iteration, um das Startdatum um die Wochenenden zu erhöhen. Dieses Lab wird Ihnen helfen, zu verstehen, wie Sie in JavaScript Datums manipulieren und Geschäftslogik auf Datumsberechnungen anwenden.
Funktion zum Hinzufügen von Werktagen zu einem angegebenen Datum
Um ein zukünftiges Datum zu berechnen, indem eine bestimmte Anzahl von Werktagen hinzugefügt wird, können Sie die addWeekDays-Funktion verwenden. Hier sind die Schritte:
- Öffnen Sie das Terminal/SSH und geben Sie
nodeein, um mit der Code-Praxis zu beginnen. - Verwenden Sie die
addWeekDays-Funktion, die zwei Argumente akzeptiert:startDateundcount. startDateist das Datum, ab dem Sie die Werktage hinzufügen möchten.countist die Anzahl der Werktage, die Sie zum Startdatum hinzufügen möchten.- Die Funktion konstruiert ein Array mit der
Array.from()-Methode und setzt die Länge auf die Anzahl der hinzuzufügenden Werktage. - Die
Array.prototype.reduce()-Methode wird verwendet, um das Array zu iterieren, beginnend beistartDate, und es mitDate.prototype.getDate()undDate.prototype.setDate()zu erhöhen. - Die Funktion überprüft, ob das aktuelle
dateein Wochenende ist oder nicht. - Wenn das aktuelle
dateein Wochenende ist, aktualisiert die Funktion es erneut, indem entweder einen oder zwei Tage hinzugefügt werden, um es zu einem Werktag zu machen. - Die Funktion nimmt keine offiziellen Feiertage in Betracht.
const addWeekDays = (startDate, count) =>
Array.from({ length: count }).reduce((date) => {
date = new Date(date.setDate(date.getDate() + 1));
if (date.getDay() % 6 === 0)
date = new Date(date.setDate(date.getDate() + (date.getDay() / 6 + 1)));
return date;
}, startDate);
Hier sind einige Beispiele dafür, wie Sie die addWeekDays-Funktion verwenden können:
addWeekDays(new Date("Oct 09, 2020"), 5); // 'Oct 16, 2020'
addWeekDays(new Date("Oct 12, 2020"), 5); // 'Oct 19, 2020'
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab "Add Weekdays to Date" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.