Estou tentando detectar com Moment.js se uma determinada data está entre duas datas. Desde a versão 2.0.0, Tim adicionou isBefore()
e isAfter()
para comparação de datas.
Como não há isBetween()
método, achei que isso funcionaria:
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! :(");
}
Estou convencido de que deve haver uma maneira melhor de fazer isso. Alguma ideia?
isBetween
||
isStart || isEnd