J'essaye de détecter avec Moment.js si une date donnée est entre deux dates. Depuis la version 2.0.0, Tim a ajouté isBefore()
et isAfter()
pour la comparaison des dates.
Puisqu'il n'y a pas de isBetween()
méthode, j'ai pensé que cela fonctionnerait:
var date = moment("15/02/2013", "DD/MM/YYYY");
var startDate = moment("12/01/2013", "DD/MM/YYYY");
var endDate = moment("15/01/2013", "DD/MM/YYYY");
if (date.isBefore(endDate)
&& date.isAfter(startDate)
|| (date.isSame(startDate) || date.isSame(endDate))
) {
alert("Yay!");
} else {
alert("Nay! :(");
}
Je suis convaincu qu'il doit y avoir une meilleure façon de faire cela. Des idées?
isBetween
||
isStart || isEnd