Как сравнить только дату в момент.js
Я новичок в данный момент.js. У меня есть объект Date и время, связанное с ним. Я просто хочу проверить, если эта дата больше или равна сегодняшней дате,исключая время при сравнении.
var dateToCompare = 2015-04-06T18:30:00.000Z
Я просто хочу проверить, если dateToCompare равен или больше, чем сегодняшняя дата. Я проверил isSame момента.js, но он, кажется, принимает строку и только часть даты. Но я не хочу конвертировать свою дату в строку или манипулировать ею дальше. Потому что я беспокоюсь,что javascript может сделать что-то неожиданное при преобразовании этой даты в строку(например, добавление смещения или dst и т. д.), Или я могу ошибаться.
пример isSame () из docs
moment('2010-10-20').isSame('2010-10-20');
также я ищу что-то вроде isSame() и isAfter (), Объединенных как одно утверждение.
мне нужно сравнить, используя момент.только js.Пожалуйста, не предлагайте простое сравнение дат javascript.
2 ответа:
документы довольно ясно что вы передаете второй параметр для указания детализации.
Если вы хотите ограничить детализацию до единицы, отличной от миллисекунд, передайте единицы в качестве второго параметра.
moment('2010-10-20').isAfter('2010-01-01', 'year'); // false moment('2010-10-20').isAfter('2009-12-31', 'year'); // true
поскольку второй параметр определяет точность, а не только одно значение для проверки, использование day будет проверять год, месяц и день.
для вашего случая вы бы прошли
'day'
как второй параметр.