Introduction
Dans ce laboratoire, nous allons explorer la manière de créer un générateur de plage de dates à l'aide de JavaScript. Ce générateur nous permettra de générer facilement toutes les dates dans une plage spécifiée avec un pas donné. En utilisant le constructeur Date et le mot clé yield, nous pouvons itérer efficacement sur les dates et les renvoyer à l'utilisateur. Ce laboratoire sera une excellente occasion de pratiquer le travail avec les boucles et les dates en JavaScript.
Générateur de plage de dates
Pour générer toutes les dates dans une plage donnée avec un pas donné, utilisez le code suivant dans le Terminal/SSH et tapez node :
const dateRangeGenerator = function* (start, end, step = 1) {
let d = start;
while (d < end) {
yield new Date(d);
d.setDate(d.getDate() + step);
}
};
Cela crée un générateur qui utilise une boucle while pour itérer de start à end, utilise le constructeur Date pour renvoyer chaque date dans la plage et incrémente de step jours à l'aide de Date.prototype.getDate() et Date.prototype.setDate().
Pour utiliser la valeur par défaut de 1 pour step, omettez le troisième argument.
Voici un exemple de manière d'utiliser le dateRangeGenerator :
[...dateRangeGenerator(new Date("2021-06-01"), new Date("2021-06-04"))];
// [ 2021-06-01, 2021-06-02, 2021-06-03 ]
Résumé
Félicitations ! Vous avez terminé le laboratoire Générateur de plage de dates. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.