vérifier si une date est comprise entre deux dates (javascript)
J'ai besoin de vérifier si une date - une chaîne en dd/mm/yyyy
format -
se situe entre deux autres dates ayant le même format dd/mm/yyyy
J'ai essayé ceci, mais ça ne fonctionne pas:
var dateFrom = "02/05/2013";
var dateTo = "02/09/2013";
var dateCheck = "02/07/2013";
var from = Date.parse(dateFrom);
var to = Date.parse(dateTo);
var check = Date.parse(dateCheck );
if((check <= to && check >= from)) alert("date contained");
J'ai utilisé débogueur et vérifié, les to
et from
variables ont isNaN
valeur.
Pourriez-vous m'aider?
- Daniel, vous avez besoin de mettre à jour le corrrect réponse. La réponse avec le plus de votes n'est pas de vérifier les dates seulement pour le mois
Vous devez vous connecter pour publier un commentaire.
Date.parse
prend en charge le formatmm/dd/yyyy
pasdd/mm/yyyy
. Pour le dernier, soit utiliser une bibliothèque comme moment.js ou de faire quelque chose comme indiqué ci-dessouscheck >= from && check < to
Au lieu de comparer les dates directement, comparez les getTime() de la valeur de la date. Le getTime() renvoie le nombre de millisecondes depuis le 1er janvier 1970 comme un entier-- doit être facile à déterminer si un entier, il se situe entre deux autres nombres entiers.
Quelque chose comme
NaN
ni a unGetTime
ni ungetTime
méthode?Essayer ce qui est ci-dessous. Il vous aidera à...
Violon : http://jsfiddle.net/RYh7U/146/
Script :
NAN
alors cette fonctionreturn False
de Sorte que leDate you check Or Pass
estNot Availed
ouIn Valid
et c'est l'ENFER différence entre le code de la mine et de luiNaN
en premier lieu (ce qui n'est pas dans tous les navigateurs)now
tombe sous7:00am
à9:00pm
La réponse qui a 50 votes ne pas vérifier la date vérifie seulement pour le mois. Cette réponse n'est pas correcte. Le code ci-dessous fonctionne.
C'est le code affiché dans une autre réponse et j'ai changé les dates et c'est ainsi que j'ai remarqué qu'il ne fonctionne pas
Essayez ceci:
HTML
JAVASCRIPT
Violon:
https://jsfiddle.net/zm75cq2a/
Ici est une Date méthode de Prototype écrit en caractères d'imprimerie:
J'ai fait la même chose que @Diode, la première réponse, mais j'ai fait l'état avec une plage de dates, j'espère que cet exemple va être utile pour quelqu'un
e.g (le même code pour exemple avec un tableau de dates)
JS:
Essayer cette
Violon