Как вычислить точную разницу между датами в годах на Java Script? Как определить точную разницу в годах между текущей датой и датой в формате "0000-00-00 00:00:00". На PHP это решается просто:DateTime::createFromFormat("Y-m-d H:i:s", '2014-09-12 00:00:00')
->diff(new DateTime('now'))
->y;
Есть подобное элегантное решение на Java Script?

21 Авг 2019 в 06:30
243 +1
0
Ответы
1

Да, на JavaScript можно использовать объекты Date для вычисления разницы между датами. Вот пример как это можно сделать:

function getYearDifference(dateString) {
var date = new Date(dateString);
var currentDate = new Date();
var yearsDiff = currentDate.getFullYear() - date.getFullYear();
if (currentDate.getMonth() < date.getMonth()) {
yearsDiff--;
} else if (currentDate.getMonth() == date.getMonth()) {
if (currentDate.getDate() < date.getDate()) {
yearsDiff--;
}
}
return yearsDiff;
}
console.log(getYearDifference('2014-09-12 00:00:00'));

Этот код сначала создает объекты Date для текущей даты и для переданной даты. Затем он сравнивает годы и, если текущая дата меньше, чем переданная дата по месяцу или дню, уменьшает разницу на 1 год. Наконец, функция возвращает точную разницу в годах между двумя датами.

Обратите внимание, что при создании объекта Date из строки даты, учтите формат строки даты, он должен быть распознаваемым объектом Date.

20 Апр в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир