<script>
let Data = new Date(),
TDay = new Date();
let finDate ='';
//Получаем последний день месяца и его индекс
let lastDay = new Date(Data.getFullYear(), Data.getMonth() + 1, 0);
let dInd = lastDay.getDay();
//Вычисляем разницу до четверга
let minDay = 0;
if(dInd==0) minDay=3;
if(dInd==1) minDay=4;
if(dInd==2) minDay=5;
if(dInd==3) minDay=6;
if(dInd==4) minDay=0;
if(dInd==5) minDay=1;
if(dInd==6) minDay=2;
//Получаем дату четверга, последнего в месяце
lastDay.setDate(lastDay.getDate()-minDay);
//Сравниваем текущую дату и последний четверг месяца
if(Data < lastDay){//если последний четверг месяца ещё не наступил и не прошёл
finDate = lastDay;
}else{//если последний четверг месяца уже был
//Получаем последний день месяца и его индекс
let lastDay = new Date(Data.getFullYear(), Data.getMonth() + 2, 0);
let dInd = lastDay.getDay();
//Вычисляем разницу до четверга
let minDay = 0;
if(dInd==0) minDay=3;
if(dInd==1) minDay=4;
if(dInd==2) minDay=5;
if(dInd==3) minDay=6;
if(dInd==4) minDay=0;
if(dInd==5) minDay=1;
if(dInd==6) minDay=2;
//Получаем дату четверга, последнего в месяце
lastDay.setDate(lastDay.getDate()-minDay);
finDate = lastDay;
};
let Month = finDate.getMonth();
let Day = finDate.getDate();
let Year = finDate.getFullYear();
//Добавить 0
let zMonth = ("0" + (Month+1)).slice(-2);
switch (Month)
{
case 0: fMonth="января"; break;
case 1: fMonth="февраля"; break;
case 2: fMonth="марта"; break;
case 3: fMonth="апреля"; break;
case 4: fMonth="мая"; break;
case 5: fMonth="июня"; break;
case 6: fMonth="июля"; break;
case 7: fMonth="августа"; break;
case 8: fMonth="сентября"; break;
case 9: fMonth="октября"; break;
case 10: fMonth="ноября"; break;
case 11: fMonth="декабря"; break;
}
finDate = `${Day}.${zMonth}.${Year}`;
$('.date-text .tn-atom').text(finDate);
</script>