Разница в датах MomentJS Day только без учета времени

Есть ли способ сравнить 2 даты без времени с momentJS?

Я пробовал разные форматы, но не могу заставить их работать.

У меня он отлично работает с dateTime:

var ExpiryDate = new Date("11/13/2014 11:13:00");
var daysDiff = moment(ExpiryDate).diff(moment(Date.now()), 'days');

Я хочу, чтобы результат был 14 дней независимо от времени суток.

Спасибо


person AJTECH    schedule 03.11.2014    source источник
comment
если вы хотите добавить день в зависимости от времени, сравните временную часть двух дат и добавьте, если необходимо...   -  person harishr    schedule 03.11.2014


Ответы (1)


Вы можете использовать функцию startOf, чтобы удалить компоненты времени обеих дат.

moment(ExpiryDate).startOf('day').diff(moment(Date.now()).startOf('day'), 'days');
person codebox    schedule 03.11.2014
comment
Примечание. Этот метод изменяет исходную дату. Для «дня» он буквально устанавливает минуты, секунды и часы для объекта existing равными 0 (поэтому это очень быстро). В этом случае вы создаете новый объект и изменяете его, чтобы не было реальных побочных эффектов, но если бы вы сделали ExpiryDate.startOf('day') без создания нового moment, то это изменило бы оригинал. Вот реализация, если вам интересно: >github.com/moment/moment/blob/ - person Simon_Weaver; 28.06.2017