Génération d'un tableau de dates dans une plage donnée en JavaScript
En JavaScript, vous pouvez rencontrer le besoin de créer un tableau de dates entre deux dates précisées. Cela peut être une tâche difficile, en particulier lorsqu'il s'agit de limites de mois et d'année.
Pour résoudre ce problème, explorons une solution utilisant l'objet Date de JavaScript.
Extension personnalisée pour l'ajout de jours à une Date
Tout d'abord, nous allons étendre le prototype Date pour inclure une méthode addDays(). Cette méthode prend le nombre de jours à ajouter à la date et renvoie un nouvel objet Date reflétant la date ajustée.
Date.prototype.addDays = function(days) { var date = new Date(this.valueOf()); date.setDate(date.getDate() + days); return date; }
Fonction pour obtenir un tableau de dates
Ensuite, nous définirons une fonction appelée getDates() qui prend deux objets Date comme paramètres : un startDate et un stopDate.
function getDates(startDate, stopDate) { var dateArray = new Array(); var currentDate = startDate; while (currentDate <= stopDate) { dateArray.push(new Date (currentDate)); currentDate = currentDate.addDays(1); } return dateArray; }
Implémentation
Cette fonction initialise un tableau vide appelé dateArray. Il commence ensuite par startDate et avance d'un jour à la fois en utilisant la méthode addDays() jusqu'à ce qu'il atteigne ou dépasse le stopDate. Pour chaque date valide, il ajoute un nouvel objet Date au dateArray.
Le code suivant démontre l'utilisation de ces fonctions :
var range = getDates(new Date(), new Date().addDays(7));
Ce code crée un tableau d'objets Date représentant la jours entre aujourd'hui et 7 jours à compter d'aujourd'hui, y compris aujourd'hui. La variable range contiendra un tableau d'objets date.
Démo
Vous pouvez essayer cette solution sur http://jsfiddle.net/jfhartsock/cM3ZU/ pour une démo fonctionnelle.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!