Разница дат MomentJs

161
05 февраля 2019, 16:50

Нигде не смог найти как при вычитании из одной даты другой получить сколько прошло полных лет, полных месяцев и полных дней. По отдельности посчитать не проблема, а можно ли как-то вывести разницу сразу в формате 'N лет N месяцев N дней' учитывая?

var oneD = moment('11.10.2005'); 
var TwoD= moment('15.11.2025'); 
var duration = moment.duration(TwoD.diff(oneD));
var years = ~~duration.asYears();
var months = ~~duration.asMonths() - years*12;
var allD = years + ' лет ' + months + ' месяцев';
Answer 1

var a = moment([2025, 11, 15]); 
var b = moment([2005, 10, 11]); 
 
var years = a.diff(b, 'year'); 
b.add(years, 'years'); 
 
var months = a.diff(b, 'months'); 
b.add(months, 'months'); 
 
var days = a.diff(b, 'days'); 
 
console.log(years + ' years ' + months + ' months ' + days + ' days');
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>

@Оригинал ответа на so

READ ALSO
Плагин Sublime Text 3

Плагин Sublime Text 3

Всем привет! Есть ли плагин для sublime 3, что бы по выбранному курсором массиву или переменной в которой хранится число, он автоматически выстраивал...

204
Почему работа с датами отличается на локальной машине и в эмуляторах?

Почему работа с датами отличается на локальной машине и в эмуляторах?

Столкнулся с проблемой, что консоль возвращает разный результат в браузере и REPL

173
Листание слайдера движением мыши

Листание слайдера движением мыши

Возникла задача: листание меню движением мыши влево вправоСамо меню решено сделать слайдером (для облегчения работы)

246