<div class="pg-info">
<div class="pg-info__top">Бронирование открыто до <span id="date">01.03.2019</span></div>
<div class="pg-info__bottom">осталось ВСЕГО <span class="number">45 </span><span>ДНЕЙ</span>
</div>
</div>
let datestring = document.querySelector('#date').innerText; // получаем дату "Ч"
let regexp = /(\d{2})\.(\d{2})\.(\d{4})/;
let dateX = new Date(datestring.replace(regexp, '$2/$1/$3')); // парсим из нее дату с заменой строки в понятный JS формат (имеется в виду же 1 марта?)
let dateToday = new Date(); // дата на момент захода на страницу
let days = Math.floor((dateX - dateToday) / 86400000) // количество целых дней до ожидаемого дня
[дата, месяц, год]
, у сегодняшней даты сбросить часы, минуты, секунды, миллисекунды на ноль - чтобы тоже начало дня было. Посчитать разницу двух дат в миллисекундах, перевести в сутки:function daysTill(ddmmyyyy) {
let dd, mm, yyyy;
[dd, mm, yyyy] = ddmmyyyy.split('.');
const Till = new Date(yyyy, mm-1, dd);
const Now = new Date();
return Math.floor((Till - Now) / 864e5);
}
daysTill("01.03.2019") // 13