我使用momentjs
确定日期是否为人生日。但由于某些原因moment
总是返回false
,我不确定原因。
使用过的代码
moment(dateObject).isSame(moment(otherDateObject), 'day')
记录各个日期和isSame()
关于这个问题的任何想法?正如您所看到的那样,2时刻实例中唯一的区别就是年份。
来自momentjs
过去一天将检查日,月和年
那么我如何检查它是否匹配日期和月份?
答案 0 :(得分:3)
如果您只想查看月份和月份的某一天,可以使用date()
和month()
getter编写自己的函数。
这是一个示例:
var m1 = moment('2017-01-25');
var m2 = moment('2015-02-25');
var m3 = moment('2015-02-25');
function isSameDayAndMonth(m1, m2){
return m1.date() === m2 .date() && m1.month() === m2.month()
}
console.log( isSameDayAndMonth(m1, m2) );
console.log( isSameDayAndMonth(m1, m3) );
console.log( isSameDayAndMonth(m2, m3) );
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
答案 1 :(得分:1)
嗯,这些日子被认为是不同的,因为它们在不同年份出现并且不是同一天。
moment('2010-01-01').isSame('2010-02-01', 'day'); // false, different month
如果你只是想检查一天是否相同,我会尝试这样的事情:
if (moment(dateObject, "D") === moment(otherDateObject, "D"))
您可以使用&#34; E&#34;星期几......