Member 13567245 Ответов: 1

Как я могу считать дни между двумя датами в javascript? (Без лет только месяц и день для каждого года)


например: с 6 мая (без 2017 года) по 7 ноября (без 2017 года) день:1, день:2, день:3..... И 8 ноября (без 2017 года) до 5 мая следующего года (без 2018 года) день:1, день:2, день:3..... У меня есть этот код но расчет дней только для этого года а не с 8 ноября по 5 мая следующего года

Что я уже пробовал:

функция getDays(strDay1, strDay2){ var day=1000*60*60*24;

strDay1 = strDay1 + ''+ (new Date().getFullYear()); strDay2 = strDay2 + '' + (new Date().getFullYear());

ВАР Д1 = дата.синтаксический анализ(strDay1); ВАР Д2 = дата.синтаксический анализ(strDay2);

ВАР дифф = Д2 - Д1; вернуться математика.круг(разн./день) }

alert(getDays('Nov 8', 'Mai 5'));

1 Ответов

Рейтинг:
1

Member 12088223

Используйте следующую функцию в Javascript.

функция getDays(strDay1, strDay2) {
отладчик;
var strMonth1 = strDay1.split(' ')[0];
var strMonth2 = strDay2.split(' ')[0];
ВАР месяцев = { январь: 1, февраль: 2, мар: 2, апрель-4, май: 5, июня: 6 июля: 7 авг: 8, сентябрь-9, октябрь-10, ноябрь: 11, декабря: 12 };
Month1 = месяцы[strMonth1.toUpperCase()];
Month2 = месяцы[strMonth2.toUpperCase()];
if (Month1 > Month2)
{
strDay1 = strDay1 + '' + (новая дата().getFullYear());
strDay2 = strDay2 + '' + (новая дата().getFullYear()+1);
}
еще
{
strDay1 = strDay1 + '' + (новая дата().getFullYear());
strDay2 = strDay2 + '' + (новая дата().getFullYear());
}
ВАР День = 1000 * 60 * 60 * 24;

ВАР Д1 = дата.синтаксический анализ(strDay1); ВАР Д2 = дата.синтаксический анализ(strDay2);

ВАР дифф = Д2 - Д1; вернуться математика.круг(разн. / день)
}