Moment: .diff() возвращает отрицательное значение

Созданный на 2 нояб. 2017  ·  3Комментарии  ·  Источник: moment/moment

Описание проблемы и шаги для воспроизведения:
выполнить moment('2016-02-01').diff('2016-03-01', 'days')

Окружающая обстановка:
react 1.6

Примеры: Chrome 49 в OSX, Internet Explorer 10 в Windows 7, Node.JS 4.4.4 в Ubuntu 16.0.4.
хром

По сути, я хотел рассчитать дни между этими двумя датами, и результат -29 .

Самый полезный комментарий

@stackninigi Положительные и отрицательные результаты diff позволяют узнать, какая дата раньше / позже другой.

Если вы хотите получить положительный результат, убедитесь, что вы делаете later.diff(earlier, ...)
т.е. moment('2016-03-01').diff('2016-02-01', 'days')

Все 3 Комментарий

Это достигается другим путем.

moment.duration(moment('2016-02-01').diff(moment('2016-03-01'))).asDays()

@stackninigi Положительные и отрицательные результаты diff позволяют узнать, какая дата раньше / позже другой.

Если вы хотите получить положительный результат, убедитесь, что вы делаете later.diff(earlier, ...)
т.е. moment('2016-03-01').diff('2016-02-01', 'days')

Что сказал @ashsearle . Я бы взял Math.abs() результата.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги