Moment.js:日期之间的日期 [英] Moment.js: Date between dates
问题描述
如果给定的日期在两个日期之间,我试图用Moment.js检测。从版本2.0.0起,Tim添加了 isBefore()
和 isAfter()
进行日期比较。
I'm trying to detect with Moment.js if a given date is between two dates. Since version 2.0.0, Tim added isBefore()
and isAfter()
for date comparison.
由于没有 isBetween()
方法,我认为这将工作:
Since there's no isBetween()
method, I thought this would work:
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!:();
}
if (date.isBefore(endDate) && date.isAfter(startDate) || (date.isSame(startDate) || date.isSame(endDate)) ) { alert("Yay!"); } else { alert("Nay! :("); }
我相信有必要做一个更好的方法,任何想法?
I'm convinced there's got to be a better way to do this. Any ideas?
推荐答案
p>您可以使用其中一个插件 - > moment-range 处理日期范围:
You can use one of the moment plugin -> moment-range to deal with date range:
var startDate = new Date(2013, 1, 12)
, endDate = new Date(2013, 1, 15)
, date = new Date(2013, 2, 15)
, range = moment().range(startDate, endDate);
range.contains(date); // false
这篇关于Moment.js:日期之间的日期的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!